package tpi.obj3.planificador.ui.contentassist.antlr.internal; 

import java.io.InputStream;
import org.eclipse.xtext.*;
import org.eclipse.xtext.parser.*;
import org.eclipse.xtext.parser.impl.*;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.xtext.parser.antlr.XtextTokenStream;
import org.eclipse.xtext.parser.antlr.XtextTokenStream.HiddenTokens;
import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.AbstractInternalContentAssistParser;
import org.eclipse.xtext.ui.editor.contentassist.antlr.internal.DFA;
import tpi.obj3.planificador.services.PlanificadorGrammarAccess;



import org.antlr.runtime.*;
import java.util.Stack;
import java.util.List;
import java.util.ArrayList;

@SuppressWarnings("all")
public class InternalPlanificadorParser extends AbstractInternalContentAssistParser {
    public static final String[] tokenNames = new String[] {
        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_INT", "RULE_ID", "RULE_STRING", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'simple'", "'semi'", "'exclusiva'", "'planificacion'", "'semestre'", "'{'", "'a dictar:'", "'horarios'", "'lunes:'", "';'", "'martes:'", "'miercoles:'", "'jueves:'", "'viernes:'", "'sabado:'", "'}'", "'materia'", "'hs/sem:'", "'ds/sem:'", "'requiere:'", "'docente con dedicacion'", "'recurso'", "'aula'", "'desde'", "'hasta'", "'en'", "'dicta'"
    };
    public static final int RULE_ID=5;
    public static final int T__29=29;
    public static final int T__28=28;
    public static final int T__27=27;
    public static final int T__26=26;
    public static final int T__25=25;
    public static final int T__24=24;
    public static final int T__23=23;
    public static final int T__22=22;
    public static final int RULE_ANY_OTHER=10;
    public static final int T__21=21;
    public static final int T__20=20;
    public static final int RULE_SL_COMMENT=8;
    public static final int EOF=-1;
    public static final int RULE_ML_COMMENT=7;
    public static final int T__30=30;
    public static final int T__19=19;
    public static final int T__31=31;
    public static final int RULE_STRING=6;
    public static final int T__32=32;
    public static final int T__33=33;
    public static final int T__16=16;
    public static final int T__34=34;
    public static final int T__15=15;
    public static final int T__35=35;
    public static final int T__18=18;
    public static final int T__36=36;
    public static final int T__17=17;
    public static final int T__37=37;
    public static final int T__12=12;
    public static final int T__11=11;
    public static final int T__14=14;
    public static final int T__13=13;
    public static final int RULE_INT=4;
    public static final int RULE_WS=9;

    // delegates
    // delegators


        public InternalPlanificadorParser(TokenStream input) {
            this(input, new RecognizerSharedState());
        }
        public InternalPlanificadorParser(TokenStream input, RecognizerSharedState state) {
            super(input, state);
             
        }
        

    public String[] getTokenNames() { return InternalPlanificadorParser.tokenNames; }
    public String getGrammarFileName() { return "../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g"; }


     
     	private PlanificadorGrammarAccess grammarAccess;
     	
        public void setGrammarAccess(PlanificadorGrammarAccess grammarAccess) {
        	this.grammarAccess = grammarAccess;
        }
        
        @Override
        protected Grammar getGrammar() {
        	return grammarAccess.getGrammar();
        }
        
        @Override
        protected String getValueForTokenName(String tokenName) {
        	return tokenName;
        }




    // $ANTLR start "entryRuleModelo"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:60:1: entryRuleModelo : ruleModelo EOF ;
    public final void entryRuleModelo() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:61:1: ( ruleModelo EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:62:1: ruleModelo EOF
            {
             before(grammarAccess.getModeloRule()); 
            pushFollow(FOLLOW_ruleModelo_in_entryRuleModelo61);
            ruleModelo();

            state._fsp--;

             after(grammarAccess.getModeloRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleModelo68); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleModelo"


    // $ANTLR start "ruleModelo"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:69:1: ruleModelo : ( ( rule__Modelo__ElementosAssignment )* ) ;
    public final void ruleModelo() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:73:2: ( ( ( rule__Modelo__ElementosAssignment )* ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:74:1: ( ( rule__Modelo__ElementosAssignment )* )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:74:1: ( ( rule__Modelo__ElementosAssignment )* )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:75:1: ( rule__Modelo__ElementosAssignment )*
            {
             before(grammarAccess.getModeloAccess().getElementosAssignment()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:76:1: ( rule__Modelo__ElementosAssignment )*
            loop1:
            do {
                int alt1=2;
                int LA1_0 = input.LA(1);

                if ( (LA1_0==RULE_ID||LA1_0==14||LA1_0==27||(LA1_0>=31 && LA1_0<=34)) ) {
                    alt1=1;
                }


                switch (alt1) {
            	case 1 :
            	    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:76:2: rule__Modelo__ElementosAssignment
            	    {
            	    pushFollow(FOLLOW_rule__Modelo__ElementosAssignment_in_ruleModelo94);
            	    rule__Modelo__ElementosAssignment();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop1;
                }
            } while (true);

             after(grammarAccess.getModeloAccess().getElementosAssignment()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleModelo"


    // $ANTLR start "entryRuleElemento"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:88:1: entryRuleElemento : ruleElemento EOF ;
    public final void entryRuleElemento() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:89:1: ( ruleElemento EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:90:1: ruleElemento EOF
            {
             before(grammarAccess.getElementoRule()); 
            pushFollow(FOLLOW_ruleElemento_in_entryRuleElemento122);
            ruleElemento();

            state._fsp--;

             after(grammarAccess.getElementoRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleElemento129); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleElemento"


    // $ANTLR start "ruleElemento"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:97:1: ruleElemento : ( ( rule__Elemento__Alternatives ) ) ;
    public final void ruleElemento() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:101:2: ( ( ( rule__Elemento__Alternatives ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:102:1: ( ( rule__Elemento__Alternatives ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:102:1: ( ( rule__Elemento__Alternatives ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:103:1: ( rule__Elemento__Alternatives )
            {
             before(grammarAccess.getElementoAccess().getAlternatives()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:104:1: ( rule__Elemento__Alternatives )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:104:2: rule__Elemento__Alternatives
            {
            pushFollow(FOLLOW_rule__Elemento__Alternatives_in_ruleElemento155);
            rule__Elemento__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getElementoAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleElemento"


    // $ANTLR start "entryRulePlanificacion"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:116:1: entryRulePlanificacion : rulePlanificacion EOF ;
    public final void entryRulePlanificacion() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:117:1: ( rulePlanificacion EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:118:1: rulePlanificacion EOF
            {
             before(grammarAccess.getPlanificacionRule()); 
            pushFollow(FOLLOW_rulePlanificacion_in_entryRulePlanificacion182);
            rulePlanificacion();

            state._fsp--;

             after(grammarAccess.getPlanificacionRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRulePlanificacion189); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRulePlanificacion"


    // $ANTLR start "rulePlanificacion"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:125:1: rulePlanificacion : ( ( rule__Planificacion__Group__0 ) ) ;
    public final void rulePlanificacion() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:129:2: ( ( ( rule__Planificacion__Group__0 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:130:1: ( ( rule__Planificacion__Group__0 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:130:1: ( ( rule__Planificacion__Group__0 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:131:1: ( rule__Planificacion__Group__0 )
            {
             before(grammarAccess.getPlanificacionAccess().getGroup()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:132:1: ( rule__Planificacion__Group__0 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:132:2: rule__Planificacion__Group__0
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__0_in_rulePlanificacion215);
            rule__Planificacion__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getPlanificacionAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rulePlanificacion"


    // $ANTLR start "entryRuleMateria"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:144:1: entryRuleMateria : ruleMateria EOF ;
    public final void entryRuleMateria() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:145:1: ( ruleMateria EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:146:1: ruleMateria EOF
            {
             before(grammarAccess.getMateriaRule()); 
            pushFollow(FOLLOW_ruleMateria_in_entryRuleMateria242);
            ruleMateria();

            state._fsp--;

             after(grammarAccess.getMateriaRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleMateria249); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleMateria"


    // $ANTLR start "ruleMateria"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:153:1: ruleMateria : ( ( rule__Materia__Group__0 ) ) ;
    public final void ruleMateria() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:157:2: ( ( ( rule__Materia__Group__0 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:158:1: ( ( rule__Materia__Group__0 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:158:1: ( ( rule__Materia__Group__0 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:159:1: ( rule__Materia__Group__0 )
            {
             before(grammarAccess.getMateriaAccess().getGroup()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:160:1: ( rule__Materia__Group__0 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:160:2: rule__Materia__Group__0
            {
            pushFollow(FOLLOW_rule__Materia__Group__0_in_ruleMateria275);
            rule__Materia__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getMateriaAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleMateria"


    // $ANTLR start "entryRuleDocente"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:172:1: entryRuleDocente : ruleDocente EOF ;
    public final void entryRuleDocente() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:173:1: ( ruleDocente EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:174:1: ruleDocente EOF
            {
             before(grammarAccess.getDocenteRule()); 
            pushFollow(FOLLOW_ruleDocente_in_entryRuleDocente302);
            ruleDocente();

            state._fsp--;

             after(grammarAccess.getDocenteRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleDocente309); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleDocente"


    // $ANTLR start "ruleDocente"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:181:1: ruleDocente : ( ( rule__Docente__Group__0 ) ) ;
    public final void ruleDocente() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:185:2: ( ( ( rule__Docente__Group__0 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:186:1: ( ( rule__Docente__Group__0 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:186:1: ( ( rule__Docente__Group__0 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:187:1: ( rule__Docente__Group__0 )
            {
             before(grammarAccess.getDocenteAccess().getGroup()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:188:1: ( rule__Docente__Group__0 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:188:2: rule__Docente__Group__0
            {
            pushFollow(FOLLOW_rule__Docente__Group__0_in_ruleDocente335);
            rule__Docente__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getDocenteAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleDocente"


    // $ANTLR start "entryRuleRecurso"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:200:1: entryRuleRecurso : ruleRecurso EOF ;
    public final void entryRuleRecurso() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:201:1: ( ruleRecurso EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:202:1: ruleRecurso EOF
            {
             before(grammarAccess.getRecursoRule()); 
            pushFollow(FOLLOW_ruleRecurso_in_entryRuleRecurso362);
            ruleRecurso();

            state._fsp--;

             after(grammarAccess.getRecursoRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleRecurso369); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleRecurso"


    // $ANTLR start "ruleRecurso"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:209:1: ruleRecurso : ( ( rule__Recurso__Group__0 ) ) ;
    public final void ruleRecurso() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:213:2: ( ( ( rule__Recurso__Group__0 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:214:1: ( ( rule__Recurso__Group__0 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:214:1: ( ( rule__Recurso__Group__0 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:215:1: ( rule__Recurso__Group__0 )
            {
             before(grammarAccess.getRecursoAccess().getGroup()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:216:1: ( rule__Recurso__Group__0 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:216:2: rule__Recurso__Group__0
            {
            pushFollow(FOLLOW_rule__Recurso__Group__0_in_ruleRecurso395);
            rule__Recurso__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getRecursoAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleRecurso"


    // $ANTLR start "entryRuleAula"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:228:1: entryRuleAula : ruleAula EOF ;
    public final void entryRuleAula() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:229:1: ( ruleAula EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:230:1: ruleAula EOF
            {
             before(grammarAccess.getAulaRule()); 
            pushFollow(FOLLOW_ruleAula_in_entryRuleAula422);
            ruleAula();

            state._fsp--;

             after(grammarAccess.getAulaRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleAula429); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleAula"


    // $ANTLR start "ruleAula"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:237:1: ruleAula : ( ( rule__Aula__Group__0 ) ) ;
    public final void ruleAula() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:241:2: ( ( ( rule__Aula__Group__0 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:242:1: ( ( rule__Aula__Group__0 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:242:1: ( ( rule__Aula__Group__0 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:243:1: ( rule__Aula__Group__0 )
            {
             before(grammarAccess.getAulaAccess().getGroup()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:244:1: ( rule__Aula__Group__0 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:244:2: rule__Aula__Group__0
            {
            pushFollow(FOLLOW_rule__Aula__Group__0_in_ruleAula455);
            rule__Aula__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getAulaAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleAula"


    // $ANTLR start "entryRuleClase"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:256:1: entryRuleClase : ruleClase EOF ;
    public final void entryRuleClase() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:257:1: ( ruleClase EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:258:1: ruleClase EOF
            {
             before(grammarAccess.getClaseRule()); 
            pushFollow(FOLLOW_ruleClase_in_entryRuleClase482);
            ruleClase();

            state._fsp--;

             after(grammarAccess.getClaseRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleClase489); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleClase"


    // $ANTLR start "ruleClase"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:265:1: ruleClase : ( ( rule__Clase__Group__0 ) ) ;
    public final void ruleClase() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:269:2: ( ( ( rule__Clase__Group__0 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:270:1: ( ( rule__Clase__Group__0 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:270:1: ( ( rule__Clase__Group__0 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:271:1: ( rule__Clase__Group__0 )
            {
             before(grammarAccess.getClaseAccess().getGroup()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:272:1: ( rule__Clase__Group__0 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:272:2: rule__Clase__Group__0
            {
            pushFollow(FOLLOW_rule__Clase__Group__0_in_ruleClase515);
            rule__Clase__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getClaseAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleClase"


    // $ANTLR start "entryRuleDedicacion"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:284:1: entryRuleDedicacion : ruleDedicacion EOF ;
    public final void entryRuleDedicacion() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:285:1: ( ruleDedicacion EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:286:1: ruleDedicacion EOF
            {
             before(grammarAccess.getDedicacionRule()); 
            pushFollow(FOLLOW_ruleDedicacion_in_entryRuleDedicacion542);
            ruleDedicacion();

            state._fsp--;

             after(grammarAccess.getDedicacionRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleDedicacion549); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleDedicacion"


    // $ANTLR start "ruleDedicacion"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:293:1: ruleDedicacion : ( ( rule__Dedicacion__Alternatives ) ) ;
    public final void ruleDedicacion() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:297:2: ( ( ( rule__Dedicacion__Alternatives ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:298:1: ( ( rule__Dedicacion__Alternatives ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:298:1: ( ( rule__Dedicacion__Alternatives ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:299:1: ( rule__Dedicacion__Alternatives )
            {
             before(grammarAccess.getDedicacionAccess().getAlternatives()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:300:1: ( rule__Dedicacion__Alternatives )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:300:2: rule__Dedicacion__Alternatives
            {
            pushFollow(FOLLOW_rule__Dedicacion__Alternatives_in_ruleDedicacion575);
            rule__Dedicacion__Alternatives();

            state._fsp--;


            }

             after(grammarAccess.getDedicacionAccess().getAlternatives()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleDedicacion"


    // $ANTLR start "entryRuleSimple"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:312:1: entryRuleSimple : ruleSimple EOF ;
    public final void entryRuleSimple() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:313:1: ( ruleSimple EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:314:1: ruleSimple EOF
            {
             before(grammarAccess.getSimpleRule()); 
            pushFollow(FOLLOW_ruleSimple_in_entryRuleSimple602);
            ruleSimple();

            state._fsp--;

             after(grammarAccess.getSimpleRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleSimple609); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleSimple"


    // $ANTLR start "ruleSimple"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:321:1: ruleSimple : ( 'simple' ) ;
    public final void ruleSimple() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:325:2: ( ( 'simple' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:326:1: ( 'simple' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:326:1: ( 'simple' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:327:1: 'simple'
            {
             before(grammarAccess.getSimpleAccess().getSimpleKeyword()); 
            match(input,11,FOLLOW_11_in_ruleSimple636); 
             after(grammarAccess.getSimpleAccess().getSimpleKeyword()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleSimple"


    // $ANTLR start "entryRuleSemi"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:342:1: entryRuleSemi : ruleSemi EOF ;
    public final void entryRuleSemi() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:343:1: ( ruleSemi EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:344:1: ruleSemi EOF
            {
             before(grammarAccess.getSemiRule()); 
            pushFollow(FOLLOW_ruleSemi_in_entryRuleSemi664);
            ruleSemi();

            state._fsp--;

             after(grammarAccess.getSemiRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleSemi671); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleSemi"


    // $ANTLR start "ruleSemi"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:351:1: ruleSemi : ( 'semi' ) ;
    public final void ruleSemi() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:355:2: ( ( 'semi' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:356:1: ( 'semi' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:356:1: ( 'semi' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:357:1: 'semi'
            {
             before(grammarAccess.getSemiAccess().getSemiKeyword()); 
            match(input,12,FOLLOW_12_in_ruleSemi698); 
             after(grammarAccess.getSemiAccess().getSemiKeyword()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleSemi"


    // $ANTLR start "entryRuleExclusiva"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:372:1: entryRuleExclusiva : ruleExclusiva EOF ;
    public final void entryRuleExclusiva() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:373:1: ( ruleExclusiva EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:374:1: ruleExclusiva EOF
            {
             before(grammarAccess.getExclusivaRule()); 
            pushFollow(FOLLOW_ruleExclusiva_in_entryRuleExclusiva726);
            ruleExclusiva();

            state._fsp--;

             after(grammarAccess.getExclusivaRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleExclusiva733); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleExclusiva"


    // $ANTLR start "ruleExclusiva"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:381:1: ruleExclusiva : ( 'exclusiva' ) ;
    public final void ruleExclusiva() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:385:2: ( ( 'exclusiva' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:386:1: ( 'exclusiva' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:386:1: ( 'exclusiva' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:387:1: 'exclusiva'
            {
             before(grammarAccess.getExclusivaAccess().getExclusivaKeyword()); 
            match(input,13,FOLLOW_13_in_ruleExclusiva760); 
             after(grammarAccess.getExclusivaAccess().getExclusivaKeyword()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleExclusiva"


    // $ANTLR start "entryRuleAsignacion"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:402:1: entryRuleAsignacion : ruleAsignacion EOF ;
    public final void entryRuleAsignacion() throws RecognitionException {
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:403:1: ( ruleAsignacion EOF )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:404:1: ruleAsignacion EOF
            {
             before(grammarAccess.getAsignacionRule()); 
            pushFollow(FOLLOW_ruleAsignacion_in_entryRuleAsignacion788);
            ruleAsignacion();

            state._fsp--;

             after(grammarAccess.getAsignacionRule()); 
            match(input,EOF,FOLLOW_EOF_in_entryRuleAsignacion795); 

            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {
        }
        return ;
    }
    // $ANTLR end "entryRuleAsignacion"


    // $ANTLR start "ruleAsignacion"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:411:1: ruleAsignacion : ( ( rule__Asignacion__Group__0 ) ) ;
    public final void ruleAsignacion() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:415:2: ( ( ( rule__Asignacion__Group__0 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:416:1: ( ( rule__Asignacion__Group__0 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:416:1: ( ( rule__Asignacion__Group__0 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:417:1: ( rule__Asignacion__Group__0 )
            {
             before(grammarAccess.getAsignacionAccess().getGroup()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:418:1: ( rule__Asignacion__Group__0 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:418:2: rule__Asignacion__Group__0
            {
            pushFollow(FOLLOW_rule__Asignacion__Group__0_in_ruleAsignacion821);
            rule__Asignacion__Group__0();

            state._fsp--;


            }

             after(grammarAccess.getAsignacionAccess().getGroup()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "ruleAsignacion"


    // $ANTLR start "rule__Elemento__Alternatives"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:430:1: rule__Elemento__Alternatives : ( ( rulePlanificacion ) | ( ruleMateria ) | ( ruleRecurso ) | ( ruleDocente ) | ( ruleClase ) | ( ruleAula ) | ( ruleAsignacion ) );
    public final void rule__Elemento__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:434:1: ( ( rulePlanificacion ) | ( ruleMateria ) | ( ruleRecurso ) | ( ruleDocente ) | ( ruleClase ) | ( ruleAula ) | ( ruleAsignacion ) )
            int alt2=7;
            switch ( input.LA(1) ) {
            case 14:
                {
                alt2=1;
                }
                break;
            case 27:
                {
                alt2=2;
                }
                break;
            case 32:
                {
                alt2=3;
                }
                break;
            case 31:
                {
                alt2=4;
                }
                break;
            case 34:
                {
                alt2=5;
                }
                break;
            case 33:
                {
                alt2=6;
                }
                break;
            case RULE_ID:
                {
                alt2=7;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 2, 0, input);

                throw nvae;
            }

            switch (alt2) {
                case 1 :
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:435:1: ( rulePlanificacion )
                    {
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:435:1: ( rulePlanificacion )
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:436:1: rulePlanificacion
                    {
                     before(grammarAccess.getElementoAccess().getPlanificacionParserRuleCall_0()); 
                    pushFollow(FOLLOW_rulePlanificacion_in_rule__Elemento__Alternatives857);
                    rulePlanificacion();

                    state._fsp--;

                     after(grammarAccess.getElementoAccess().getPlanificacionParserRuleCall_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:441:6: ( ruleMateria )
                    {
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:441:6: ( ruleMateria )
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:442:1: ruleMateria
                    {
                     before(grammarAccess.getElementoAccess().getMateriaParserRuleCall_1()); 
                    pushFollow(FOLLOW_ruleMateria_in_rule__Elemento__Alternatives874);
                    ruleMateria();

                    state._fsp--;

                     after(grammarAccess.getElementoAccess().getMateriaParserRuleCall_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:447:6: ( ruleRecurso )
                    {
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:447:6: ( ruleRecurso )
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:448:1: ruleRecurso
                    {
                     before(grammarAccess.getElementoAccess().getRecursoParserRuleCall_2()); 
                    pushFollow(FOLLOW_ruleRecurso_in_rule__Elemento__Alternatives891);
                    ruleRecurso();

                    state._fsp--;

                     after(grammarAccess.getElementoAccess().getRecursoParserRuleCall_2()); 

                    }


                    }
                    break;
                case 4 :
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:453:6: ( ruleDocente )
                    {
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:453:6: ( ruleDocente )
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:454:1: ruleDocente
                    {
                     before(grammarAccess.getElementoAccess().getDocenteParserRuleCall_3()); 
                    pushFollow(FOLLOW_ruleDocente_in_rule__Elemento__Alternatives908);
                    ruleDocente();

                    state._fsp--;

                     after(grammarAccess.getElementoAccess().getDocenteParserRuleCall_3()); 

                    }


                    }
                    break;
                case 5 :
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:459:6: ( ruleClase )
                    {
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:459:6: ( ruleClase )
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:460:1: ruleClase
                    {
                     before(grammarAccess.getElementoAccess().getClaseParserRuleCall_4()); 
                    pushFollow(FOLLOW_ruleClase_in_rule__Elemento__Alternatives925);
                    ruleClase();

                    state._fsp--;

                     after(grammarAccess.getElementoAccess().getClaseParserRuleCall_4()); 

                    }


                    }
                    break;
                case 6 :
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:465:6: ( ruleAula )
                    {
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:465:6: ( ruleAula )
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:466:1: ruleAula
                    {
                     before(grammarAccess.getElementoAccess().getAulaParserRuleCall_5()); 
                    pushFollow(FOLLOW_ruleAula_in_rule__Elemento__Alternatives942);
                    ruleAula();

                    state._fsp--;

                     after(grammarAccess.getElementoAccess().getAulaParserRuleCall_5()); 

                    }


                    }
                    break;
                case 7 :
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:471:6: ( ruleAsignacion )
                    {
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:471:6: ( ruleAsignacion )
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:472:1: ruleAsignacion
                    {
                     before(grammarAccess.getElementoAccess().getAsignacionParserRuleCall_6()); 
                    pushFollow(FOLLOW_ruleAsignacion_in_rule__Elemento__Alternatives959);
                    ruleAsignacion();

                    state._fsp--;

                     after(grammarAccess.getElementoAccess().getAsignacionParserRuleCall_6()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Elemento__Alternatives"


    // $ANTLR start "rule__Dedicacion__Alternatives"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:482:1: rule__Dedicacion__Alternatives : ( ( ruleSimple ) | ( ruleSemi ) | ( ruleExclusiva ) );
    public final void rule__Dedicacion__Alternatives() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:486:1: ( ( ruleSimple ) | ( ruleSemi ) | ( ruleExclusiva ) )
            int alt3=3;
            switch ( input.LA(1) ) {
            case 11:
                {
                alt3=1;
                }
                break;
            case 12:
                {
                alt3=2;
                }
                break;
            case 13:
                {
                alt3=3;
                }
                break;
            default:
                NoViableAltException nvae =
                    new NoViableAltException("", 3, 0, input);

                throw nvae;
            }

            switch (alt3) {
                case 1 :
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:487:1: ( ruleSimple )
                    {
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:487:1: ( ruleSimple )
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:488:1: ruleSimple
                    {
                     before(grammarAccess.getDedicacionAccess().getSimpleParserRuleCall_0()); 
                    pushFollow(FOLLOW_ruleSimple_in_rule__Dedicacion__Alternatives991);
                    ruleSimple();

                    state._fsp--;

                     after(grammarAccess.getDedicacionAccess().getSimpleParserRuleCall_0()); 

                    }


                    }
                    break;
                case 2 :
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:493:6: ( ruleSemi )
                    {
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:493:6: ( ruleSemi )
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:494:1: ruleSemi
                    {
                     before(grammarAccess.getDedicacionAccess().getSemiParserRuleCall_1()); 
                    pushFollow(FOLLOW_ruleSemi_in_rule__Dedicacion__Alternatives1008);
                    ruleSemi();

                    state._fsp--;

                     after(grammarAccess.getDedicacionAccess().getSemiParserRuleCall_1()); 

                    }


                    }
                    break;
                case 3 :
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:499:6: ( ruleExclusiva )
                    {
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:499:6: ( ruleExclusiva )
                    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:500:1: ruleExclusiva
                    {
                     before(grammarAccess.getDedicacionAccess().getExclusivaParserRuleCall_2()); 
                    pushFollow(FOLLOW_ruleExclusiva_in_rule__Dedicacion__Alternatives1025);
                    ruleExclusiva();

                    state._fsp--;

                     after(grammarAccess.getDedicacionAccess().getExclusivaParserRuleCall_2()); 

                    }


                    }
                    break;

            }
        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Dedicacion__Alternatives"


    // $ANTLR start "rule__Planificacion__Group__0"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:512:1: rule__Planificacion__Group__0 : rule__Planificacion__Group__0__Impl rule__Planificacion__Group__1 ;
    public final void rule__Planificacion__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:516:1: ( rule__Planificacion__Group__0__Impl rule__Planificacion__Group__1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:517:2: rule__Planificacion__Group__0__Impl rule__Planificacion__Group__1
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__0__Impl_in_rule__Planificacion__Group__01055);
            rule__Planificacion__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__1_in_rule__Planificacion__Group__01058);
            rule__Planificacion__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__0"


    // $ANTLR start "rule__Planificacion__Group__0__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:524:1: rule__Planificacion__Group__0__Impl : ( 'planificacion' ) ;
    public final void rule__Planificacion__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:528:1: ( ( 'planificacion' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:529:1: ( 'planificacion' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:529:1: ( 'planificacion' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:530:1: 'planificacion'
            {
             before(grammarAccess.getPlanificacionAccess().getPlanificacionKeyword_0()); 
            match(input,14,FOLLOW_14_in_rule__Planificacion__Group__0__Impl1086); 
             after(grammarAccess.getPlanificacionAccess().getPlanificacionKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__0__Impl"


    // $ANTLR start "rule__Planificacion__Group__1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:543:1: rule__Planificacion__Group__1 : rule__Planificacion__Group__1__Impl rule__Planificacion__Group__2 ;
    public final void rule__Planificacion__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:547:1: ( rule__Planificacion__Group__1__Impl rule__Planificacion__Group__2 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:548:2: rule__Planificacion__Group__1__Impl rule__Planificacion__Group__2
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__1__Impl_in_rule__Planificacion__Group__11117);
            rule__Planificacion__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__2_in_rule__Planificacion__Group__11120);
            rule__Planificacion__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__1"


    // $ANTLR start "rule__Planificacion__Group__1__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:555:1: rule__Planificacion__Group__1__Impl : ( ( rule__Planificacion__AnioAssignment_1 ) ) ;
    public final void rule__Planificacion__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:559:1: ( ( ( rule__Planificacion__AnioAssignment_1 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:560:1: ( ( rule__Planificacion__AnioAssignment_1 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:560:1: ( ( rule__Planificacion__AnioAssignment_1 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:561:1: ( rule__Planificacion__AnioAssignment_1 )
            {
             before(grammarAccess.getPlanificacionAccess().getAnioAssignment_1()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:562:1: ( rule__Planificacion__AnioAssignment_1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:562:2: rule__Planificacion__AnioAssignment_1
            {
            pushFollow(FOLLOW_rule__Planificacion__AnioAssignment_1_in_rule__Planificacion__Group__1__Impl1147);
            rule__Planificacion__AnioAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getPlanificacionAccess().getAnioAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__1__Impl"


    // $ANTLR start "rule__Planificacion__Group__2"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:572:1: rule__Planificacion__Group__2 : rule__Planificacion__Group__2__Impl rule__Planificacion__Group__3 ;
    public final void rule__Planificacion__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:576:1: ( rule__Planificacion__Group__2__Impl rule__Planificacion__Group__3 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:577:2: rule__Planificacion__Group__2__Impl rule__Planificacion__Group__3
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__2__Impl_in_rule__Planificacion__Group__21177);
            rule__Planificacion__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__3_in_rule__Planificacion__Group__21180);
            rule__Planificacion__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__2"


    // $ANTLR start "rule__Planificacion__Group__2__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:584:1: rule__Planificacion__Group__2__Impl : ( 'semestre' ) ;
    public final void rule__Planificacion__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:588:1: ( ( 'semestre' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:589:1: ( 'semestre' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:589:1: ( 'semestre' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:590:1: 'semestre'
            {
             before(grammarAccess.getPlanificacionAccess().getSemestreKeyword_2()); 
            match(input,15,FOLLOW_15_in_rule__Planificacion__Group__2__Impl1208); 
             after(grammarAccess.getPlanificacionAccess().getSemestreKeyword_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__2__Impl"


    // $ANTLR start "rule__Planificacion__Group__3"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:603:1: rule__Planificacion__Group__3 : rule__Planificacion__Group__3__Impl rule__Planificacion__Group__4 ;
    public final void rule__Planificacion__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:607:1: ( rule__Planificacion__Group__3__Impl rule__Planificacion__Group__4 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:608:2: rule__Planificacion__Group__3__Impl rule__Planificacion__Group__4
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__3__Impl_in_rule__Planificacion__Group__31239);
            rule__Planificacion__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__4_in_rule__Planificacion__Group__31242);
            rule__Planificacion__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__3"


    // $ANTLR start "rule__Planificacion__Group__3__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:615:1: rule__Planificacion__Group__3__Impl : ( ( rule__Planificacion__SemestreAssignment_3 ) ) ;
    public final void rule__Planificacion__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:619:1: ( ( ( rule__Planificacion__SemestreAssignment_3 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:620:1: ( ( rule__Planificacion__SemestreAssignment_3 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:620:1: ( ( rule__Planificacion__SemestreAssignment_3 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:621:1: ( rule__Planificacion__SemestreAssignment_3 )
            {
             before(grammarAccess.getPlanificacionAccess().getSemestreAssignment_3()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:622:1: ( rule__Planificacion__SemestreAssignment_3 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:622:2: rule__Planificacion__SemestreAssignment_3
            {
            pushFollow(FOLLOW_rule__Planificacion__SemestreAssignment_3_in_rule__Planificacion__Group__3__Impl1269);
            rule__Planificacion__SemestreAssignment_3();

            state._fsp--;


            }

             after(grammarAccess.getPlanificacionAccess().getSemestreAssignment_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__3__Impl"


    // $ANTLR start "rule__Planificacion__Group__4"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:632:1: rule__Planificacion__Group__4 : rule__Planificacion__Group__4__Impl rule__Planificacion__Group__5 ;
    public final void rule__Planificacion__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:636:1: ( rule__Planificacion__Group__4__Impl rule__Planificacion__Group__5 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:637:2: rule__Planificacion__Group__4__Impl rule__Planificacion__Group__5
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__4__Impl_in_rule__Planificacion__Group__41299);
            rule__Planificacion__Group__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__5_in_rule__Planificacion__Group__41302);
            rule__Planificacion__Group__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__4"


    // $ANTLR start "rule__Planificacion__Group__4__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:644:1: rule__Planificacion__Group__4__Impl : ( '{' ) ;
    public final void rule__Planificacion__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:648:1: ( ( '{' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:649:1: ( '{' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:649:1: ( '{' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:650:1: '{'
            {
             before(grammarAccess.getPlanificacionAccess().getLeftCurlyBracketKeyword_4()); 
            match(input,16,FOLLOW_16_in_rule__Planificacion__Group__4__Impl1330); 
             after(grammarAccess.getPlanificacionAccess().getLeftCurlyBracketKeyword_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__4__Impl"


    // $ANTLR start "rule__Planificacion__Group__5"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:663:1: rule__Planificacion__Group__5 : rule__Planificacion__Group__5__Impl rule__Planificacion__Group__6 ;
    public final void rule__Planificacion__Group__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:667:1: ( rule__Planificacion__Group__5__Impl rule__Planificacion__Group__6 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:668:2: rule__Planificacion__Group__5__Impl rule__Planificacion__Group__6
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__5__Impl_in_rule__Planificacion__Group__51361);
            rule__Planificacion__Group__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__6_in_rule__Planificacion__Group__51364);
            rule__Planificacion__Group__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__5"


    // $ANTLR start "rule__Planificacion__Group__5__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:675:1: rule__Planificacion__Group__5__Impl : ( 'a dictar:' ) ;
    public final void rule__Planificacion__Group__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:679:1: ( ( 'a dictar:' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:680:1: ( 'a dictar:' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:680:1: ( 'a dictar:' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:681:1: 'a dictar:'
            {
             before(grammarAccess.getPlanificacionAccess().getADictarKeyword_5()); 
            match(input,17,FOLLOW_17_in_rule__Planificacion__Group__5__Impl1392); 
             after(grammarAccess.getPlanificacionAccess().getADictarKeyword_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__5__Impl"


    // $ANTLR start "rule__Planificacion__Group__6"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:694:1: rule__Planificacion__Group__6 : rule__Planificacion__Group__6__Impl rule__Planificacion__Group__7 ;
    public final void rule__Planificacion__Group__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:698:1: ( rule__Planificacion__Group__6__Impl rule__Planificacion__Group__7 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:699:2: rule__Planificacion__Group__6__Impl rule__Planificacion__Group__7
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__6__Impl_in_rule__Planificacion__Group__61423);
            rule__Planificacion__Group__6__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__7_in_rule__Planificacion__Group__61426);
            rule__Planificacion__Group__7();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__6"


    // $ANTLR start "rule__Planificacion__Group__6__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:706:1: rule__Planificacion__Group__6__Impl : ( ( rule__Planificacion__MateriasAssignment_6 )* ) ;
    public final void rule__Planificacion__Group__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:710:1: ( ( ( rule__Planificacion__MateriasAssignment_6 )* ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:711:1: ( ( rule__Planificacion__MateriasAssignment_6 )* )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:711:1: ( ( rule__Planificacion__MateriasAssignment_6 )* )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:712:1: ( rule__Planificacion__MateriasAssignment_6 )*
            {
             before(grammarAccess.getPlanificacionAccess().getMateriasAssignment_6()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:713:1: ( rule__Planificacion__MateriasAssignment_6 )*
            loop4:
            do {
                int alt4=2;
                int LA4_0 = input.LA(1);

                if ( (LA4_0==RULE_ID) ) {
                    alt4=1;
                }


                switch (alt4) {
            	case 1 :
            	    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:713:2: rule__Planificacion__MateriasAssignment_6
            	    {
            	    pushFollow(FOLLOW_rule__Planificacion__MateriasAssignment_6_in_rule__Planificacion__Group__6__Impl1453);
            	    rule__Planificacion__MateriasAssignment_6();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop4;
                }
            } while (true);

             after(grammarAccess.getPlanificacionAccess().getMateriasAssignment_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__6__Impl"


    // $ANTLR start "rule__Planificacion__Group__7"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:723:1: rule__Planificacion__Group__7 : rule__Planificacion__Group__7__Impl rule__Planificacion__Group__8 ;
    public final void rule__Planificacion__Group__7() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:727:1: ( rule__Planificacion__Group__7__Impl rule__Planificacion__Group__8 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:728:2: rule__Planificacion__Group__7__Impl rule__Planificacion__Group__8
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__7__Impl_in_rule__Planificacion__Group__71484);
            rule__Planificacion__Group__7__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__8_in_rule__Planificacion__Group__71487);
            rule__Planificacion__Group__8();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__7"


    // $ANTLR start "rule__Planificacion__Group__7__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:735:1: rule__Planificacion__Group__7__Impl : ( 'horarios' ) ;
    public final void rule__Planificacion__Group__7__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:739:1: ( ( 'horarios' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:740:1: ( 'horarios' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:740:1: ( 'horarios' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:741:1: 'horarios'
            {
             before(grammarAccess.getPlanificacionAccess().getHorariosKeyword_7()); 
            match(input,18,FOLLOW_18_in_rule__Planificacion__Group__7__Impl1515); 
             after(grammarAccess.getPlanificacionAccess().getHorariosKeyword_7()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__7__Impl"


    // $ANTLR start "rule__Planificacion__Group__8"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:754:1: rule__Planificacion__Group__8 : rule__Planificacion__Group__8__Impl rule__Planificacion__Group__9 ;
    public final void rule__Planificacion__Group__8() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:758:1: ( rule__Planificacion__Group__8__Impl rule__Planificacion__Group__9 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:759:2: rule__Planificacion__Group__8__Impl rule__Planificacion__Group__9
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__8__Impl_in_rule__Planificacion__Group__81546);
            rule__Planificacion__Group__8__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__9_in_rule__Planificacion__Group__81549);
            rule__Planificacion__Group__9();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__8"


    // $ANTLR start "rule__Planificacion__Group__8__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:766:1: rule__Planificacion__Group__8__Impl : ( '{' ) ;
    public final void rule__Planificacion__Group__8__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:770:1: ( ( '{' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:771:1: ( '{' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:771:1: ( '{' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:772:1: '{'
            {
             before(grammarAccess.getPlanificacionAccess().getLeftCurlyBracketKeyword_8()); 
            match(input,16,FOLLOW_16_in_rule__Planificacion__Group__8__Impl1577); 
             after(grammarAccess.getPlanificacionAccess().getLeftCurlyBracketKeyword_8()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__8__Impl"


    // $ANTLR start "rule__Planificacion__Group__9"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:785:1: rule__Planificacion__Group__9 : rule__Planificacion__Group__9__Impl rule__Planificacion__Group__10 ;
    public final void rule__Planificacion__Group__9() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:789:1: ( rule__Planificacion__Group__9__Impl rule__Planificacion__Group__10 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:790:2: rule__Planificacion__Group__9__Impl rule__Planificacion__Group__10
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__9__Impl_in_rule__Planificacion__Group__91608);
            rule__Planificacion__Group__9__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__10_in_rule__Planificacion__Group__91611);
            rule__Planificacion__Group__10();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__9"


    // $ANTLR start "rule__Planificacion__Group__9__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:797:1: rule__Planificacion__Group__9__Impl : ( 'lunes:' ) ;
    public final void rule__Planificacion__Group__9__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:801:1: ( ( 'lunes:' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:802:1: ( 'lunes:' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:802:1: ( 'lunes:' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:803:1: 'lunes:'
            {
             before(grammarAccess.getPlanificacionAccess().getLunesKeyword_9()); 
            match(input,19,FOLLOW_19_in_rule__Planificacion__Group__9__Impl1639); 
             after(grammarAccess.getPlanificacionAccess().getLunesKeyword_9()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__9__Impl"


    // $ANTLR start "rule__Planificacion__Group__10"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:816:1: rule__Planificacion__Group__10 : rule__Planificacion__Group__10__Impl rule__Planificacion__Group__11 ;
    public final void rule__Planificacion__Group__10() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:820:1: ( rule__Planificacion__Group__10__Impl rule__Planificacion__Group__11 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:821:2: rule__Planificacion__Group__10__Impl rule__Planificacion__Group__11
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__10__Impl_in_rule__Planificacion__Group__101670);
            rule__Planificacion__Group__10__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__11_in_rule__Planificacion__Group__101673);
            rule__Planificacion__Group__11();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__10"


    // $ANTLR start "rule__Planificacion__Group__10__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:828:1: rule__Planificacion__Group__10__Impl : ( ( rule__Planificacion__ClasesLunesAssignment_10 )* ) ;
    public final void rule__Planificacion__Group__10__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:832:1: ( ( ( rule__Planificacion__ClasesLunesAssignment_10 )* ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:833:1: ( ( rule__Planificacion__ClasesLunesAssignment_10 )* )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:833:1: ( ( rule__Planificacion__ClasesLunesAssignment_10 )* )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:834:1: ( rule__Planificacion__ClasesLunesAssignment_10 )*
            {
             before(grammarAccess.getPlanificacionAccess().getClasesLunesAssignment_10()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:835:1: ( rule__Planificacion__ClasesLunesAssignment_10 )*
            loop5:
            do {
                int alt5=2;
                int LA5_0 = input.LA(1);

                if ( (LA5_0==34) ) {
                    alt5=1;
                }


                switch (alt5) {
            	case 1 :
            	    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:835:2: rule__Planificacion__ClasesLunesAssignment_10
            	    {
            	    pushFollow(FOLLOW_rule__Planificacion__ClasesLunesAssignment_10_in_rule__Planificacion__Group__10__Impl1700);
            	    rule__Planificacion__ClasesLunesAssignment_10();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop5;
                }
            } while (true);

             after(grammarAccess.getPlanificacionAccess().getClasesLunesAssignment_10()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__10__Impl"


    // $ANTLR start "rule__Planificacion__Group__11"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:845:1: rule__Planificacion__Group__11 : rule__Planificacion__Group__11__Impl rule__Planificacion__Group__12 ;
    public final void rule__Planificacion__Group__11() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:849:1: ( rule__Planificacion__Group__11__Impl rule__Planificacion__Group__12 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:850:2: rule__Planificacion__Group__11__Impl rule__Planificacion__Group__12
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__11__Impl_in_rule__Planificacion__Group__111731);
            rule__Planificacion__Group__11__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__12_in_rule__Planificacion__Group__111734);
            rule__Planificacion__Group__12();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__11"


    // $ANTLR start "rule__Planificacion__Group__11__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:857:1: rule__Planificacion__Group__11__Impl : ( ';' ) ;
    public final void rule__Planificacion__Group__11__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:861:1: ( ( ';' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:862:1: ( ';' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:862:1: ( ';' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:863:1: ';'
            {
             before(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_11()); 
            match(input,20,FOLLOW_20_in_rule__Planificacion__Group__11__Impl1762); 
             after(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_11()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__11__Impl"


    // $ANTLR start "rule__Planificacion__Group__12"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:876:1: rule__Planificacion__Group__12 : rule__Planificacion__Group__12__Impl rule__Planificacion__Group__13 ;
    public final void rule__Planificacion__Group__12() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:880:1: ( rule__Planificacion__Group__12__Impl rule__Planificacion__Group__13 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:881:2: rule__Planificacion__Group__12__Impl rule__Planificacion__Group__13
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__12__Impl_in_rule__Planificacion__Group__121793);
            rule__Planificacion__Group__12__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__13_in_rule__Planificacion__Group__121796);
            rule__Planificacion__Group__13();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__12"


    // $ANTLR start "rule__Planificacion__Group__12__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:888:1: rule__Planificacion__Group__12__Impl : ( 'martes:' ) ;
    public final void rule__Planificacion__Group__12__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:892:1: ( ( 'martes:' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:893:1: ( 'martes:' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:893:1: ( 'martes:' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:894:1: 'martes:'
            {
             before(grammarAccess.getPlanificacionAccess().getMartesKeyword_12()); 
            match(input,21,FOLLOW_21_in_rule__Planificacion__Group__12__Impl1824); 
             after(grammarAccess.getPlanificacionAccess().getMartesKeyword_12()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__12__Impl"


    // $ANTLR start "rule__Planificacion__Group__13"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:907:1: rule__Planificacion__Group__13 : rule__Planificacion__Group__13__Impl rule__Planificacion__Group__14 ;
    public final void rule__Planificacion__Group__13() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:911:1: ( rule__Planificacion__Group__13__Impl rule__Planificacion__Group__14 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:912:2: rule__Planificacion__Group__13__Impl rule__Planificacion__Group__14
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__13__Impl_in_rule__Planificacion__Group__131855);
            rule__Planificacion__Group__13__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__14_in_rule__Planificacion__Group__131858);
            rule__Planificacion__Group__14();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__13"


    // $ANTLR start "rule__Planificacion__Group__13__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:919:1: rule__Planificacion__Group__13__Impl : ( ( rule__Planificacion__ClasesMartesAssignment_13 )* ) ;
    public final void rule__Planificacion__Group__13__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:923:1: ( ( ( rule__Planificacion__ClasesMartesAssignment_13 )* ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:924:1: ( ( rule__Planificacion__ClasesMartesAssignment_13 )* )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:924:1: ( ( rule__Planificacion__ClasesMartesAssignment_13 )* )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:925:1: ( rule__Planificacion__ClasesMartesAssignment_13 )*
            {
             before(grammarAccess.getPlanificacionAccess().getClasesMartesAssignment_13()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:926:1: ( rule__Planificacion__ClasesMartesAssignment_13 )*
            loop6:
            do {
                int alt6=2;
                int LA6_0 = input.LA(1);

                if ( (LA6_0==34) ) {
                    alt6=1;
                }


                switch (alt6) {
            	case 1 :
            	    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:926:2: rule__Planificacion__ClasesMartesAssignment_13
            	    {
            	    pushFollow(FOLLOW_rule__Planificacion__ClasesMartesAssignment_13_in_rule__Planificacion__Group__13__Impl1885);
            	    rule__Planificacion__ClasesMartesAssignment_13();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop6;
                }
            } while (true);

             after(grammarAccess.getPlanificacionAccess().getClasesMartesAssignment_13()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__13__Impl"


    // $ANTLR start "rule__Planificacion__Group__14"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:936:1: rule__Planificacion__Group__14 : rule__Planificacion__Group__14__Impl rule__Planificacion__Group__15 ;
    public final void rule__Planificacion__Group__14() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:940:1: ( rule__Planificacion__Group__14__Impl rule__Planificacion__Group__15 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:941:2: rule__Planificacion__Group__14__Impl rule__Planificacion__Group__15
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__14__Impl_in_rule__Planificacion__Group__141916);
            rule__Planificacion__Group__14__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__15_in_rule__Planificacion__Group__141919);
            rule__Planificacion__Group__15();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__14"


    // $ANTLR start "rule__Planificacion__Group__14__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:948:1: rule__Planificacion__Group__14__Impl : ( ';' ) ;
    public final void rule__Planificacion__Group__14__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:952:1: ( ( ';' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:953:1: ( ';' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:953:1: ( ';' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:954:1: ';'
            {
             before(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_14()); 
            match(input,20,FOLLOW_20_in_rule__Planificacion__Group__14__Impl1947); 
             after(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_14()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__14__Impl"


    // $ANTLR start "rule__Planificacion__Group__15"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:967:1: rule__Planificacion__Group__15 : rule__Planificacion__Group__15__Impl rule__Planificacion__Group__16 ;
    public final void rule__Planificacion__Group__15() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:971:1: ( rule__Planificacion__Group__15__Impl rule__Planificacion__Group__16 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:972:2: rule__Planificacion__Group__15__Impl rule__Planificacion__Group__16
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__15__Impl_in_rule__Planificacion__Group__151978);
            rule__Planificacion__Group__15__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__16_in_rule__Planificacion__Group__151981);
            rule__Planificacion__Group__16();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__15"


    // $ANTLR start "rule__Planificacion__Group__15__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:979:1: rule__Planificacion__Group__15__Impl : ( 'miercoles:' ) ;
    public final void rule__Planificacion__Group__15__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:983:1: ( ( 'miercoles:' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:984:1: ( 'miercoles:' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:984:1: ( 'miercoles:' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:985:1: 'miercoles:'
            {
             before(grammarAccess.getPlanificacionAccess().getMiercolesKeyword_15()); 
            match(input,22,FOLLOW_22_in_rule__Planificacion__Group__15__Impl2009); 
             after(grammarAccess.getPlanificacionAccess().getMiercolesKeyword_15()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__15__Impl"


    // $ANTLR start "rule__Planificacion__Group__16"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:998:1: rule__Planificacion__Group__16 : rule__Planificacion__Group__16__Impl rule__Planificacion__Group__17 ;
    public final void rule__Planificacion__Group__16() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1002:1: ( rule__Planificacion__Group__16__Impl rule__Planificacion__Group__17 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1003:2: rule__Planificacion__Group__16__Impl rule__Planificacion__Group__17
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__16__Impl_in_rule__Planificacion__Group__162040);
            rule__Planificacion__Group__16__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__17_in_rule__Planificacion__Group__162043);
            rule__Planificacion__Group__17();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__16"


    // $ANTLR start "rule__Planificacion__Group__16__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1010:1: rule__Planificacion__Group__16__Impl : ( ( rule__Planificacion__ClasesMiercolesAssignment_16 )* ) ;
    public final void rule__Planificacion__Group__16__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1014:1: ( ( ( rule__Planificacion__ClasesMiercolesAssignment_16 )* ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1015:1: ( ( rule__Planificacion__ClasesMiercolesAssignment_16 )* )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1015:1: ( ( rule__Planificacion__ClasesMiercolesAssignment_16 )* )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1016:1: ( rule__Planificacion__ClasesMiercolesAssignment_16 )*
            {
             before(grammarAccess.getPlanificacionAccess().getClasesMiercolesAssignment_16()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1017:1: ( rule__Planificacion__ClasesMiercolesAssignment_16 )*
            loop7:
            do {
                int alt7=2;
                int LA7_0 = input.LA(1);

                if ( (LA7_0==34) ) {
                    alt7=1;
                }


                switch (alt7) {
            	case 1 :
            	    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1017:2: rule__Planificacion__ClasesMiercolesAssignment_16
            	    {
            	    pushFollow(FOLLOW_rule__Planificacion__ClasesMiercolesAssignment_16_in_rule__Planificacion__Group__16__Impl2070);
            	    rule__Planificacion__ClasesMiercolesAssignment_16();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop7;
                }
            } while (true);

             after(grammarAccess.getPlanificacionAccess().getClasesMiercolesAssignment_16()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__16__Impl"


    // $ANTLR start "rule__Planificacion__Group__17"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1027:1: rule__Planificacion__Group__17 : rule__Planificacion__Group__17__Impl rule__Planificacion__Group__18 ;
    public final void rule__Planificacion__Group__17() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1031:1: ( rule__Planificacion__Group__17__Impl rule__Planificacion__Group__18 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1032:2: rule__Planificacion__Group__17__Impl rule__Planificacion__Group__18
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__17__Impl_in_rule__Planificacion__Group__172101);
            rule__Planificacion__Group__17__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__18_in_rule__Planificacion__Group__172104);
            rule__Planificacion__Group__18();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__17"


    // $ANTLR start "rule__Planificacion__Group__17__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1039:1: rule__Planificacion__Group__17__Impl : ( ';' ) ;
    public final void rule__Planificacion__Group__17__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1043:1: ( ( ';' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1044:1: ( ';' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1044:1: ( ';' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1045:1: ';'
            {
             before(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_17()); 
            match(input,20,FOLLOW_20_in_rule__Planificacion__Group__17__Impl2132); 
             after(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_17()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__17__Impl"


    // $ANTLR start "rule__Planificacion__Group__18"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1058:1: rule__Planificacion__Group__18 : rule__Planificacion__Group__18__Impl rule__Planificacion__Group__19 ;
    public final void rule__Planificacion__Group__18() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1062:1: ( rule__Planificacion__Group__18__Impl rule__Planificacion__Group__19 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1063:2: rule__Planificacion__Group__18__Impl rule__Planificacion__Group__19
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__18__Impl_in_rule__Planificacion__Group__182163);
            rule__Planificacion__Group__18__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__19_in_rule__Planificacion__Group__182166);
            rule__Planificacion__Group__19();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__18"


    // $ANTLR start "rule__Planificacion__Group__18__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1070:1: rule__Planificacion__Group__18__Impl : ( 'jueves:' ) ;
    public final void rule__Planificacion__Group__18__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1074:1: ( ( 'jueves:' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1075:1: ( 'jueves:' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1075:1: ( 'jueves:' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1076:1: 'jueves:'
            {
             before(grammarAccess.getPlanificacionAccess().getJuevesKeyword_18()); 
            match(input,23,FOLLOW_23_in_rule__Planificacion__Group__18__Impl2194); 
             after(grammarAccess.getPlanificacionAccess().getJuevesKeyword_18()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__18__Impl"


    // $ANTLR start "rule__Planificacion__Group__19"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1089:1: rule__Planificacion__Group__19 : rule__Planificacion__Group__19__Impl rule__Planificacion__Group__20 ;
    public final void rule__Planificacion__Group__19() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1093:1: ( rule__Planificacion__Group__19__Impl rule__Planificacion__Group__20 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1094:2: rule__Planificacion__Group__19__Impl rule__Planificacion__Group__20
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__19__Impl_in_rule__Planificacion__Group__192225);
            rule__Planificacion__Group__19__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__20_in_rule__Planificacion__Group__192228);
            rule__Planificacion__Group__20();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__19"


    // $ANTLR start "rule__Planificacion__Group__19__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1101:1: rule__Planificacion__Group__19__Impl : ( ( rule__Planificacion__ClasesJuevesAssignment_19 )* ) ;
    public final void rule__Planificacion__Group__19__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1105:1: ( ( ( rule__Planificacion__ClasesJuevesAssignment_19 )* ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1106:1: ( ( rule__Planificacion__ClasesJuevesAssignment_19 )* )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1106:1: ( ( rule__Planificacion__ClasesJuevesAssignment_19 )* )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1107:1: ( rule__Planificacion__ClasesJuevesAssignment_19 )*
            {
             before(grammarAccess.getPlanificacionAccess().getClasesJuevesAssignment_19()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1108:1: ( rule__Planificacion__ClasesJuevesAssignment_19 )*
            loop8:
            do {
                int alt8=2;
                int LA8_0 = input.LA(1);

                if ( (LA8_0==34) ) {
                    alt8=1;
                }


                switch (alt8) {
            	case 1 :
            	    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1108:2: rule__Planificacion__ClasesJuevesAssignment_19
            	    {
            	    pushFollow(FOLLOW_rule__Planificacion__ClasesJuevesAssignment_19_in_rule__Planificacion__Group__19__Impl2255);
            	    rule__Planificacion__ClasesJuevesAssignment_19();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop8;
                }
            } while (true);

             after(grammarAccess.getPlanificacionAccess().getClasesJuevesAssignment_19()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__19__Impl"


    // $ANTLR start "rule__Planificacion__Group__20"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1118:1: rule__Planificacion__Group__20 : rule__Planificacion__Group__20__Impl rule__Planificacion__Group__21 ;
    public final void rule__Planificacion__Group__20() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1122:1: ( rule__Planificacion__Group__20__Impl rule__Planificacion__Group__21 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1123:2: rule__Planificacion__Group__20__Impl rule__Planificacion__Group__21
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__20__Impl_in_rule__Planificacion__Group__202286);
            rule__Planificacion__Group__20__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__21_in_rule__Planificacion__Group__202289);
            rule__Planificacion__Group__21();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__20"


    // $ANTLR start "rule__Planificacion__Group__20__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1130:1: rule__Planificacion__Group__20__Impl : ( ';' ) ;
    public final void rule__Planificacion__Group__20__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1134:1: ( ( ';' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1135:1: ( ';' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1135:1: ( ';' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1136:1: ';'
            {
             before(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_20()); 
            match(input,20,FOLLOW_20_in_rule__Planificacion__Group__20__Impl2317); 
             after(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_20()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__20__Impl"


    // $ANTLR start "rule__Planificacion__Group__21"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1149:1: rule__Planificacion__Group__21 : rule__Planificacion__Group__21__Impl rule__Planificacion__Group__22 ;
    public final void rule__Planificacion__Group__21() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1153:1: ( rule__Planificacion__Group__21__Impl rule__Planificacion__Group__22 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1154:2: rule__Planificacion__Group__21__Impl rule__Planificacion__Group__22
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__21__Impl_in_rule__Planificacion__Group__212348);
            rule__Planificacion__Group__21__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__22_in_rule__Planificacion__Group__212351);
            rule__Planificacion__Group__22();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__21"


    // $ANTLR start "rule__Planificacion__Group__21__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1161:1: rule__Planificacion__Group__21__Impl : ( 'viernes:' ) ;
    public final void rule__Planificacion__Group__21__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1165:1: ( ( 'viernes:' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1166:1: ( 'viernes:' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1166:1: ( 'viernes:' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1167:1: 'viernes:'
            {
             before(grammarAccess.getPlanificacionAccess().getViernesKeyword_21()); 
            match(input,24,FOLLOW_24_in_rule__Planificacion__Group__21__Impl2379); 
             after(grammarAccess.getPlanificacionAccess().getViernesKeyword_21()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__21__Impl"


    // $ANTLR start "rule__Planificacion__Group__22"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1180:1: rule__Planificacion__Group__22 : rule__Planificacion__Group__22__Impl rule__Planificacion__Group__23 ;
    public final void rule__Planificacion__Group__22() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1184:1: ( rule__Planificacion__Group__22__Impl rule__Planificacion__Group__23 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1185:2: rule__Planificacion__Group__22__Impl rule__Planificacion__Group__23
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__22__Impl_in_rule__Planificacion__Group__222410);
            rule__Planificacion__Group__22__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__23_in_rule__Planificacion__Group__222413);
            rule__Planificacion__Group__23();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__22"


    // $ANTLR start "rule__Planificacion__Group__22__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1192:1: rule__Planificacion__Group__22__Impl : ( ( rule__Planificacion__ClasesViernesAssignment_22 )* ) ;
    public final void rule__Planificacion__Group__22__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1196:1: ( ( ( rule__Planificacion__ClasesViernesAssignment_22 )* ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1197:1: ( ( rule__Planificacion__ClasesViernesAssignment_22 )* )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1197:1: ( ( rule__Planificacion__ClasesViernesAssignment_22 )* )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1198:1: ( rule__Planificacion__ClasesViernesAssignment_22 )*
            {
             before(grammarAccess.getPlanificacionAccess().getClasesViernesAssignment_22()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1199:1: ( rule__Planificacion__ClasesViernesAssignment_22 )*
            loop9:
            do {
                int alt9=2;
                int LA9_0 = input.LA(1);

                if ( (LA9_0==34) ) {
                    alt9=1;
                }


                switch (alt9) {
            	case 1 :
            	    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1199:2: rule__Planificacion__ClasesViernesAssignment_22
            	    {
            	    pushFollow(FOLLOW_rule__Planificacion__ClasesViernesAssignment_22_in_rule__Planificacion__Group__22__Impl2440);
            	    rule__Planificacion__ClasesViernesAssignment_22();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop9;
                }
            } while (true);

             after(grammarAccess.getPlanificacionAccess().getClasesViernesAssignment_22()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__22__Impl"


    // $ANTLR start "rule__Planificacion__Group__23"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1209:1: rule__Planificacion__Group__23 : rule__Planificacion__Group__23__Impl rule__Planificacion__Group__24 ;
    public final void rule__Planificacion__Group__23() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1213:1: ( rule__Planificacion__Group__23__Impl rule__Planificacion__Group__24 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1214:2: rule__Planificacion__Group__23__Impl rule__Planificacion__Group__24
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__23__Impl_in_rule__Planificacion__Group__232471);
            rule__Planificacion__Group__23__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__24_in_rule__Planificacion__Group__232474);
            rule__Planificacion__Group__24();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__23"


    // $ANTLR start "rule__Planificacion__Group__23__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1221:1: rule__Planificacion__Group__23__Impl : ( ';' ) ;
    public final void rule__Planificacion__Group__23__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1225:1: ( ( ';' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1226:1: ( ';' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1226:1: ( ';' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1227:1: ';'
            {
             before(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_23()); 
            match(input,20,FOLLOW_20_in_rule__Planificacion__Group__23__Impl2502); 
             after(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_23()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__23__Impl"


    // $ANTLR start "rule__Planificacion__Group__24"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1240:1: rule__Planificacion__Group__24 : rule__Planificacion__Group__24__Impl rule__Planificacion__Group__25 ;
    public final void rule__Planificacion__Group__24() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1244:1: ( rule__Planificacion__Group__24__Impl rule__Planificacion__Group__25 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1245:2: rule__Planificacion__Group__24__Impl rule__Planificacion__Group__25
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__24__Impl_in_rule__Planificacion__Group__242533);
            rule__Planificacion__Group__24__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__25_in_rule__Planificacion__Group__242536);
            rule__Planificacion__Group__25();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__24"


    // $ANTLR start "rule__Planificacion__Group__24__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1252:1: rule__Planificacion__Group__24__Impl : ( 'sabado:' ) ;
    public final void rule__Planificacion__Group__24__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1256:1: ( ( 'sabado:' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1257:1: ( 'sabado:' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1257:1: ( 'sabado:' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1258:1: 'sabado:'
            {
             before(grammarAccess.getPlanificacionAccess().getSabadoKeyword_24()); 
            match(input,25,FOLLOW_25_in_rule__Planificacion__Group__24__Impl2564); 
             after(grammarAccess.getPlanificacionAccess().getSabadoKeyword_24()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__24__Impl"


    // $ANTLR start "rule__Planificacion__Group__25"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1271:1: rule__Planificacion__Group__25 : rule__Planificacion__Group__25__Impl rule__Planificacion__Group__26 ;
    public final void rule__Planificacion__Group__25() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1275:1: ( rule__Planificacion__Group__25__Impl rule__Planificacion__Group__26 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1276:2: rule__Planificacion__Group__25__Impl rule__Planificacion__Group__26
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__25__Impl_in_rule__Planificacion__Group__252595);
            rule__Planificacion__Group__25__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__26_in_rule__Planificacion__Group__252598);
            rule__Planificacion__Group__26();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__25"


    // $ANTLR start "rule__Planificacion__Group__25__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1283:1: rule__Planificacion__Group__25__Impl : ( ( rule__Planificacion__ClasesSabadoAssignment_25 )* ) ;
    public final void rule__Planificacion__Group__25__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1287:1: ( ( ( rule__Planificacion__ClasesSabadoAssignment_25 )* ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1288:1: ( ( rule__Planificacion__ClasesSabadoAssignment_25 )* )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1288:1: ( ( rule__Planificacion__ClasesSabadoAssignment_25 )* )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1289:1: ( rule__Planificacion__ClasesSabadoAssignment_25 )*
            {
             before(grammarAccess.getPlanificacionAccess().getClasesSabadoAssignment_25()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1290:1: ( rule__Planificacion__ClasesSabadoAssignment_25 )*
            loop10:
            do {
                int alt10=2;
                int LA10_0 = input.LA(1);

                if ( (LA10_0==34) ) {
                    alt10=1;
                }


                switch (alt10) {
            	case 1 :
            	    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1290:2: rule__Planificacion__ClasesSabadoAssignment_25
            	    {
            	    pushFollow(FOLLOW_rule__Planificacion__ClasesSabadoAssignment_25_in_rule__Planificacion__Group__25__Impl2625);
            	    rule__Planificacion__ClasesSabadoAssignment_25();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop10;
                }
            } while (true);

             after(grammarAccess.getPlanificacionAccess().getClasesSabadoAssignment_25()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__25__Impl"


    // $ANTLR start "rule__Planificacion__Group__26"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1300:1: rule__Planificacion__Group__26 : rule__Planificacion__Group__26__Impl rule__Planificacion__Group__27 ;
    public final void rule__Planificacion__Group__26() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1304:1: ( rule__Planificacion__Group__26__Impl rule__Planificacion__Group__27 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1305:2: rule__Planificacion__Group__26__Impl rule__Planificacion__Group__27
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__26__Impl_in_rule__Planificacion__Group__262656);
            rule__Planificacion__Group__26__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__27_in_rule__Planificacion__Group__262659);
            rule__Planificacion__Group__27();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__26"


    // $ANTLR start "rule__Planificacion__Group__26__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1312:1: rule__Planificacion__Group__26__Impl : ( ';' ) ;
    public final void rule__Planificacion__Group__26__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1316:1: ( ( ';' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1317:1: ( ';' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1317:1: ( ';' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1318:1: ';'
            {
             before(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_26()); 
            match(input,20,FOLLOW_20_in_rule__Planificacion__Group__26__Impl2687); 
             after(grammarAccess.getPlanificacionAccess().getSemicolonKeyword_26()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__26__Impl"


    // $ANTLR start "rule__Planificacion__Group__27"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1331:1: rule__Planificacion__Group__27 : rule__Planificacion__Group__27__Impl rule__Planificacion__Group__28 ;
    public final void rule__Planificacion__Group__27() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1335:1: ( rule__Planificacion__Group__27__Impl rule__Planificacion__Group__28 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1336:2: rule__Planificacion__Group__27__Impl rule__Planificacion__Group__28
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__27__Impl_in_rule__Planificacion__Group__272718);
            rule__Planificacion__Group__27__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Planificacion__Group__28_in_rule__Planificacion__Group__272721);
            rule__Planificacion__Group__28();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__27"


    // $ANTLR start "rule__Planificacion__Group__27__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1343:1: rule__Planificacion__Group__27__Impl : ( '}' ) ;
    public final void rule__Planificacion__Group__27__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1347:1: ( ( '}' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1348:1: ( '}' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1348:1: ( '}' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1349:1: '}'
            {
             before(grammarAccess.getPlanificacionAccess().getRightCurlyBracketKeyword_27()); 
            match(input,26,FOLLOW_26_in_rule__Planificacion__Group__27__Impl2749); 
             after(grammarAccess.getPlanificacionAccess().getRightCurlyBracketKeyword_27()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__27__Impl"


    // $ANTLR start "rule__Planificacion__Group__28"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1362:1: rule__Planificacion__Group__28 : rule__Planificacion__Group__28__Impl ;
    public final void rule__Planificacion__Group__28() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1366:1: ( rule__Planificacion__Group__28__Impl )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1367:2: rule__Planificacion__Group__28__Impl
            {
            pushFollow(FOLLOW_rule__Planificacion__Group__28__Impl_in_rule__Planificacion__Group__282780);
            rule__Planificacion__Group__28__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__28"


    // $ANTLR start "rule__Planificacion__Group__28__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1373:1: rule__Planificacion__Group__28__Impl : ( '}' ) ;
    public final void rule__Planificacion__Group__28__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1377:1: ( ( '}' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1378:1: ( '}' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1378:1: ( '}' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1379:1: '}'
            {
             before(grammarAccess.getPlanificacionAccess().getRightCurlyBracketKeyword_28()); 
            match(input,26,FOLLOW_26_in_rule__Planificacion__Group__28__Impl2808); 
             after(grammarAccess.getPlanificacionAccess().getRightCurlyBracketKeyword_28()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__Group__28__Impl"


    // $ANTLR start "rule__Materia__Group__0"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1450:1: rule__Materia__Group__0 : rule__Materia__Group__0__Impl rule__Materia__Group__1 ;
    public final void rule__Materia__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1454:1: ( rule__Materia__Group__0__Impl rule__Materia__Group__1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1455:2: rule__Materia__Group__0__Impl rule__Materia__Group__1
            {
            pushFollow(FOLLOW_rule__Materia__Group__0__Impl_in_rule__Materia__Group__02897);
            rule__Materia__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Materia__Group__1_in_rule__Materia__Group__02900);
            rule__Materia__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__0"


    // $ANTLR start "rule__Materia__Group__0__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1462:1: rule__Materia__Group__0__Impl : ( 'materia' ) ;
    public final void rule__Materia__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1466:1: ( ( 'materia' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1467:1: ( 'materia' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1467:1: ( 'materia' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1468:1: 'materia'
            {
             before(grammarAccess.getMateriaAccess().getMateriaKeyword_0()); 
            match(input,27,FOLLOW_27_in_rule__Materia__Group__0__Impl2928); 
             after(grammarAccess.getMateriaAccess().getMateriaKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__0__Impl"


    // $ANTLR start "rule__Materia__Group__1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1481:1: rule__Materia__Group__1 : rule__Materia__Group__1__Impl rule__Materia__Group__2 ;
    public final void rule__Materia__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1485:1: ( rule__Materia__Group__1__Impl rule__Materia__Group__2 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1486:2: rule__Materia__Group__1__Impl rule__Materia__Group__2
            {
            pushFollow(FOLLOW_rule__Materia__Group__1__Impl_in_rule__Materia__Group__12959);
            rule__Materia__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Materia__Group__2_in_rule__Materia__Group__12962);
            rule__Materia__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__1"


    // $ANTLR start "rule__Materia__Group__1__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1493:1: rule__Materia__Group__1__Impl : ( ( rule__Materia__NameAssignment_1 ) ) ;
    public final void rule__Materia__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1497:1: ( ( ( rule__Materia__NameAssignment_1 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1498:1: ( ( rule__Materia__NameAssignment_1 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1498:1: ( ( rule__Materia__NameAssignment_1 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1499:1: ( rule__Materia__NameAssignment_1 )
            {
             before(grammarAccess.getMateriaAccess().getNameAssignment_1()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1500:1: ( rule__Materia__NameAssignment_1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1500:2: rule__Materia__NameAssignment_1
            {
            pushFollow(FOLLOW_rule__Materia__NameAssignment_1_in_rule__Materia__Group__1__Impl2989);
            rule__Materia__NameAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getMateriaAccess().getNameAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__1__Impl"


    // $ANTLR start "rule__Materia__Group__2"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1510:1: rule__Materia__Group__2 : rule__Materia__Group__2__Impl rule__Materia__Group__3 ;
    public final void rule__Materia__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1514:1: ( rule__Materia__Group__2__Impl rule__Materia__Group__3 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1515:2: rule__Materia__Group__2__Impl rule__Materia__Group__3
            {
            pushFollow(FOLLOW_rule__Materia__Group__2__Impl_in_rule__Materia__Group__23019);
            rule__Materia__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Materia__Group__3_in_rule__Materia__Group__23022);
            rule__Materia__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__2"


    // $ANTLR start "rule__Materia__Group__2__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1522:1: rule__Materia__Group__2__Impl : ( '{' ) ;
    public final void rule__Materia__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1526:1: ( ( '{' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1527:1: ( '{' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1527:1: ( '{' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1528:1: '{'
            {
             before(grammarAccess.getMateriaAccess().getLeftCurlyBracketKeyword_2()); 
            match(input,16,FOLLOW_16_in_rule__Materia__Group__2__Impl3050); 
             after(grammarAccess.getMateriaAccess().getLeftCurlyBracketKeyword_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__2__Impl"


    // $ANTLR start "rule__Materia__Group__3"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1541:1: rule__Materia__Group__3 : rule__Materia__Group__3__Impl rule__Materia__Group__4 ;
    public final void rule__Materia__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1545:1: ( rule__Materia__Group__3__Impl rule__Materia__Group__4 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1546:2: rule__Materia__Group__3__Impl rule__Materia__Group__4
            {
            pushFollow(FOLLOW_rule__Materia__Group__3__Impl_in_rule__Materia__Group__33081);
            rule__Materia__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Materia__Group__4_in_rule__Materia__Group__33084);
            rule__Materia__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__3"


    // $ANTLR start "rule__Materia__Group__3__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1553:1: rule__Materia__Group__3__Impl : ( 'hs/sem:' ) ;
    public final void rule__Materia__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1557:1: ( ( 'hs/sem:' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1558:1: ( 'hs/sem:' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1558:1: ( 'hs/sem:' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1559:1: 'hs/sem:'
            {
             before(grammarAccess.getMateriaAccess().getHsSemKeyword_3()); 
            match(input,28,FOLLOW_28_in_rule__Materia__Group__3__Impl3112); 
             after(grammarAccess.getMateriaAccess().getHsSemKeyword_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__3__Impl"


    // $ANTLR start "rule__Materia__Group__4"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1572:1: rule__Materia__Group__4 : rule__Materia__Group__4__Impl rule__Materia__Group__5 ;
    public final void rule__Materia__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1576:1: ( rule__Materia__Group__4__Impl rule__Materia__Group__5 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1577:2: rule__Materia__Group__4__Impl rule__Materia__Group__5
            {
            pushFollow(FOLLOW_rule__Materia__Group__4__Impl_in_rule__Materia__Group__43143);
            rule__Materia__Group__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Materia__Group__5_in_rule__Materia__Group__43146);
            rule__Materia__Group__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__4"


    // $ANTLR start "rule__Materia__Group__4__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1584:1: rule__Materia__Group__4__Impl : ( ( rule__Materia__HorasAssignment_4 ) ) ;
    public final void rule__Materia__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1588:1: ( ( ( rule__Materia__HorasAssignment_4 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1589:1: ( ( rule__Materia__HorasAssignment_4 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1589:1: ( ( rule__Materia__HorasAssignment_4 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1590:1: ( rule__Materia__HorasAssignment_4 )
            {
             before(grammarAccess.getMateriaAccess().getHorasAssignment_4()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1591:1: ( rule__Materia__HorasAssignment_4 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1591:2: rule__Materia__HorasAssignment_4
            {
            pushFollow(FOLLOW_rule__Materia__HorasAssignment_4_in_rule__Materia__Group__4__Impl3173);
            rule__Materia__HorasAssignment_4();

            state._fsp--;


            }

             after(grammarAccess.getMateriaAccess().getHorasAssignment_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__4__Impl"


    // $ANTLR start "rule__Materia__Group__5"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1601:1: rule__Materia__Group__5 : rule__Materia__Group__5__Impl rule__Materia__Group__6 ;
    public final void rule__Materia__Group__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1605:1: ( rule__Materia__Group__5__Impl rule__Materia__Group__6 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1606:2: rule__Materia__Group__5__Impl rule__Materia__Group__6
            {
            pushFollow(FOLLOW_rule__Materia__Group__5__Impl_in_rule__Materia__Group__53203);
            rule__Materia__Group__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Materia__Group__6_in_rule__Materia__Group__53206);
            rule__Materia__Group__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__5"


    // $ANTLR start "rule__Materia__Group__5__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1613:1: rule__Materia__Group__5__Impl : ( 'ds/sem:' ) ;
    public final void rule__Materia__Group__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1617:1: ( ( 'ds/sem:' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1618:1: ( 'ds/sem:' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1618:1: ( 'ds/sem:' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1619:1: 'ds/sem:'
            {
             before(grammarAccess.getMateriaAccess().getDsSemKeyword_5()); 
            match(input,29,FOLLOW_29_in_rule__Materia__Group__5__Impl3234); 
             after(grammarAccess.getMateriaAccess().getDsSemKeyword_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__5__Impl"


    // $ANTLR start "rule__Materia__Group__6"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1632:1: rule__Materia__Group__6 : rule__Materia__Group__6__Impl rule__Materia__Group__7 ;
    public final void rule__Materia__Group__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1636:1: ( rule__Materia__Group__6__Impl rule__Materia__Group__7 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1637:2: rule__Materia__Group__6__Impl rule__Materia__Group__7
            {
            pushFollow(FOLLOW_rule__Materia__Group__6__Impl_in_rule__Materia__Group__63265);
            rule__Materia__Group__6__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Materia__Group__7_in_rule__Materia__Group__63268);
            rule__Materia__Group__7();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__6"


    // $ANTLR start "rule__Materia__Group__6__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1644:1: rule__Materia__Group__6__Impl : ( ( rule__Materia__DiasAssignment_6 ) ) ;
    public final void rule__Materia__Group__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1648:1: ( ( ( rule__Materia__DiasAssignment_6 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1649:1: ( ( rule__Materia__DiasAssignment_6 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1649:1: ( ( rule__Materia__DiasAssignment_6 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1650:1: ( rule__Materia__DiasAssignment_6 )
            {
             before(grammarAccess.getMateriaAccess().getDiasAssignment_6()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1651:1: ( rule__Materia__DiasAssignment_6 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1651:2: rule__Materia__DiasAssignment_6
            {
            pushFollow(FOLLOW_rule__Materia__DiasAssignment_6_in_rule__Materia__Group__6__Impl3295);
            rule__Materia__DiasAssignment_6();

            state._fsp--;


            }

             after(grammarAccess.getMateriaAccess().getDiasAssignment_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__6__Impl"


    // $ANTLR start "rule__Materia__Group__7"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1661:1: rule__Materia__Group__7 : rule__Materia__Group__7__Impl rule__Materia__Group__8 ;
    public final void rule__Materia__Group__7() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1665:1: ( rule__Materia__Group__7__Impl rule__Materia__Group__8 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1666:2: rule__Materia__Group__7__Impl rule__Materia__Group__8
            {
            pushFollow(FOLLOW_rule__Materia__Group__7__Impl_in_rule__Materia__Group__73325);
            rule__Materia__Group__7__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Materia__Group__8_in_rule__Materia__Group__73328);
            rule__Materia__Group__8();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__7"


    // $ANTLR start "rule__Materia__Group__7__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1673:1: rule__Materia__Group__7__Impl : ( ( rule__Materia__Group_7__0 )* ) ;
    public final void rule__Materia__Group__7__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1677:1: ( ( ( rule__Materia__Group_7__0 )* ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1678:1: ( ( rule__Materia__Group_7__0 )* )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1678:1: ( ( rule__Materia__Group_7__0 )* )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1679:1: ( rule__Materia__Group_7__0 )*
            {
             before(grammarAccess.getMateriaAccess().getGroup_7()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1680:1: ( rule__Materia__Group_7__0 )*
            loop11:
            do {
                int alt11=2;
                int LA11_0 = input.LA(1);

                if ( (LA11_0==30) ) {
                    alt11=1;
                }


                switch (alt11) {
            	case 1 :
            	    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1680:2: rule__Materia__Group_7__0
            	    {
            	    pushFollow(FOLLOW_rule__Materia__Group_7__0_in_rule__Materia__Group__7__Impl3355);
            	    rule__Materia__Group_7__0();

            	    state._fsp--;


            	    }
            	    break;

            	default :
            	    break loop11;
                }
            } while (true);

             after(grammarAccess.getMateriaAccess().getGroup_7()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__7__Impl"


    // $ANTLR start "rule__Materia__Group__8"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1690:1: rule__Materia__Group__8 : rule__Materia__Group__8__Impl ;
    public final void rule__Materia__Group__8() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1694:1: ( rule__Materia__Group__8__Impl )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1695:2: rule__Materia__Group__8__Impl
            {
            pushFollow(FOLLOW_rule__Materia__Group__8__Impl_in_rule__Materia__Group__83386);
            rule__Materia__Group__8__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__8"


    // $ANTLR start "rule__Materia__Group__8__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1701:1: rule__Materia__Group__8__Impl : ( '}' ) ;
    public final void rule__Materia__Group__8__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1705:1: ( ( '}' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1706:1: ( '}' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1706:1: ( '}' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1707:1: '}'
            {
             before(grammarAccess.getMateriaAccess().getRightCurlyBracketKeyword_8()); 
            match(input,26,FOLLOW_26_in_rule__Materia__Group__8__Impl3414); 
             after(grammarAccess.getMateriaAccess().getRightCurlyBracketKeyword_8()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group__8__Impl"


    // $ANTLR start "rule__Materia__Group_7__0"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1738:1: rule__Materia__Group_7__0 : rule__Materia__Group_7__0__Impl rule__Materia__Group_7__1 ;
    public final void rule__Materia__Group_7__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1742:1: ( rule__Materia__Group_7__0__Impl rule__Materia__Group_7__1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1743:2: rule__Materia__Group_7__0__Impl rule__Materia__Group_7__1
            {
            pushFollow(FOLLOW_rule__Materia__Group_7__0__Impl_in_rule__Materia__Group_7__03463);
            rule__Materia__Group_7__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Materia__Group_7__1_in_rule__Materia__Group_7__03466);
            rule__Materia__Group_7__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group_7__0"


    // $ANTLR start "rule__Materia__Group_7__0__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1750:1: rule__Materia__Group_7__0__Impl : ( 'requiere:' ) ;
    public final void rule__Materia__Group_7__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1754:1: ( ( 'requiere:' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1755:1: ( 'requiere:' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1755:1: ( 'requiere:' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1756:1: 'requiere:'
            {
             before(grammarAccess.getMateriaAccess().getRequiereKeyword_7_0()); 
            match(input,30,FOLLOW_30_in_rule__Materia__Group_7__0__Impl3494); 
             after(grammarAccess.getMateriaAccess().getRequiereKeyword_7_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group_7__0__Impl"


    // $ANTLR start "rule__Materia__Group_7__1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1769:1: rule__Materia__Group_7__1 : rule__Materia__Group_7__1__Impl ;
    public final void rule__Materia__Group_7__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1773:1: ( rule__Materia__Group_7__1__Impl )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1774:2: rule__Materia__Group_7__1__Impl
            {
            pushFollow(FOLLOW_rule__Materia__Group_7__1__Impl_in_rule__Materia__Group_7__13525);
            rule__Materia__Group_7__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group_7__1"


    // $ANTLR start "rule__Materia__Group_7__1__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1780:1: rule__Materia__Group_7__1__Impl : ( ( rule__Materia__RequerimientosAssignment_7_1 ) ) ;
    public final void rule__Materia__Group_7__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1784:1: ( ( ( rule__Materia__RequerimientosAssignment_7_1 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1785:1: ( ( rule__Materia__RequerimientosAssignment_7_1 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1785:1: ( ( rule__Materia__RequerimientosAssignment_7_1 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1786:1: ( rule__Materia__RequerimientosAssignment_7_1 )
            {
             before(grammarAccess.getMateriaAccess().getRequerimientosAssignment_7_1()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1787:1: ( rule__Materia__RequerimientosAssignment_7_1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1787:2: rule__Materia__RequerimientosAssignment_7_1
            {
            pushFollow(FOLLOW_rule__Materia__RequerimientosAssignment_7_1_in_rule__Materia__Group_7__1__Impl3552);
            rule__Materia__RequerimientosAssignment_7_1();

            state._fsp--;


            }

             after(grammarAccess.getMateriaAccess().getRequerimientosAssignment_7_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__Group_7__1__Impl"


    // $ANTLR start "rule__Docente__Group__0"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1801:1: rule__Docente__Group__0 : rule__Docente__Group__0__Impl rule__Docente__Group__1 ;
    public final void rule__Docente__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1805:1: ( rule__Docente__Group__0__Impl rule__Docente__Group__1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1806:2: rule__Docente__Group__0__Impl rule__Docente__Group__1
            {
            pushFollow(FOLLOW_rule__Docente__Group__0__Impl_in_rule__Docente__Group__03586);
            rule__Docente__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Docente__Group__1_in_rule__Docente__Group__03589);
            rule__Docente__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Docente__Group__0"


    // $ANTLR start "rule__Docente__Group__0__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1813:1: rule__Docente__Group__0__Impl : ( 'docente con dedicacion' ) ;
    public final void rule__Docente__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1817:1: ( ( 'docente con dedicacion' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1818:1: ( 'docente con dedicacion' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1818:1: ( 'docente con dedicacion' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1819:1: 'docente con dedicacion'
            {
             before(grammarAccess.getDocenteAccess().getDocenteConDedicacionKeyword_0()); 
            match(input,31,FOLLOW_31_in_rule__Docente__Group__0__Impl3617); 
             after(grammarAccess.getDocenteAccess().getDocenteConDedicacionKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Docente__Group__0__Impl"


    // $ANTLR start "rule__Docente__Group__1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1832:1: rule__Docente__Group__1 : rule__Docente__Group__1__Impl rule__Docente__Group__2 ;
    public final void rule__Docente__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1836:1: ( rule__Docente__Group__1__Impl rule__Docente__Group__2 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1837:2: rule__Docente__Group__1__Impl rule__Docente__Group__2
            {
            pushFollow(FOLLOW_rule__Docente__Group__1__Impl_in_rule__Docente__Group__13648);
            rule__Docente__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Docente__Group__2_in_rule__Docente__Group__13651);
            rule__Docente__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Docente__Group__1"


    // $ANTLR start "rule__Docente__Group__1__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1844:1: rule__Docente__Group__1__Impl : ( ( rule__Docente__DedicacionAssignment_1 ) ) ;
    public final void rule__Docente__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1848:1: ( ( ( rule__Docente__DedicacionAssignment_1 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1849:1: ( ( rule__Docente__DedicacionAssignment_1 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1849:1: ( ( rule__Docente__DedicacionAssignment_1 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1850:1: ( rule__Docente__DedicacionAssignment_1 )
            {
             before(grammarAccess.getDocenteAccess().getDedicacionAssignment_1()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1851:1: ( rule__Docente__DedicacionAssignment_1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1851:2: rule__Docente__DedicacionAssignment_1
            {
            pushFollow(FOLLOW_rule__Docente__DedicacionAssignment_1_in_rule__Docente__Group__1__Impl3678);
            rule__Docente__DedicacionAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getDocenteAccess().getDedicacionAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Docente__Group__1__Impl"


    // $ANTLR start "rule__Docente__Group__2"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1861:1: rule__Docente__Group__2 : rule__Docente__Group__2__Impl ;
    public final void rule__Docente__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1865:1: ( rule__Docente__Group__2__Impl )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1866:2: rule__Docente__Group__2__Impl
            {
            pushFollow(FOLLOW_rule__Docente__Group__2__Impl_in_rule__Docente__Group__23708);
            rule__Docente__Group__2__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Docente__Group__2"


    // $ANTLR start "rule__Docente__Group__2__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1872:1: rule__Docente__Group__2__Impl : ( ( rule__Docente__NameAssignment_2 ) ) ;
    public final void rule__Docente__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1876:1: ( ( ( rule__Docente__NameAssignment_2 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1877:1: ( ( rule__Docente__NameAssignment_2 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1877:1: ( ( rule__Docente__NameAssignment_2 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1878:1: ( rule__Docente__NameAssignment_2 )
            {
             before(grammarAccess.getDocenteAccess().getNameAssignment_2()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1879:1: ( rule__Docente__NameAssignment_2 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1879:2: rule__Docente__NameAssignment_2
            {
            pushFollow(FOLLOW_rule__Docente__NameAssignment_2_in_rule__Docente__Group__2__Impl3735);
            rule__Docente__NameAssignment_2();

            state._fsp--;


            }

             after(grammarAccess.getDocenteAccess().getNameAssignment_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Docente__Group__2__Impl"


    // $ANTLR start "rule__Recurso__Group__0"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1895:1: rule__Recurso__Group__0 : rule__Recurso__Group__0__Impl rule__Recurso__Group__1 ;
    public final void rule__Recurso__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1899:1: ( rule__Recurso__Group__0__Impl rule__Recurso__Group__1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1900:2: rule__Recurso__Group__0__Impl rule__Recurso__Group__1
            {
            pushFollow(FOLLOW_rule__Recurso__Group__0__Impl_in_rule__Recurso__Group__03771);
            rule__Recurso__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Recurso__Group__1_in_rule__Recurso__Group__03774);
            rule__Recurso__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Recurso__Group__0"


    // $ANTLR start "rule__Recurso__Group__0__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1907:1: rule__Recurso__Group__0__Impl : ( 'recurso' ) ;
    public final void rule__Recurso__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1911:1: ( ( 'recurso' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1912:1: ( 'recurso' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1912:1: ( 'recurso' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1913:1: 'recurso'
            {
             before(grammarAccess.getRecursoAccess().getRecursoKeyword_0()); 
            match(input,32,FOLLOW_32_in_rule__Recurso__Group__0__Impl3802); 
             after(grammarAccess.getRecursoAccess().getRecursoKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Recurso__Group__0__Impl"


    // $ANTLR start "rule__Recurso__Group__1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1926:1: rule__Recurso__Group__1 : rule__Recurso__Group__1__Impl ;
    public final void rule__Recurso__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1930:1: ( rule__Recurso__Group__1__Impl )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1931:2: rule__Recurso__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__Recurso__Group__1__Impl_in_rule__Recurso__Group__13833);
            rule__Recurso__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Recurso__Group__1"


    // $ANTLR start "rule__Recurso__Group__1__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1937:1: rule__Recurso__Group__1__Impl : ( ( rule__Recurso__NameAssignment_1 ) ) ;
    public final void rule__Recurso__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1941:1: ( ( ( rule__Recurso__NameAssignment_1 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1942:1: ( ( rule__Recurso__NameAssignment_1 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1942:1: ( ( rule__Recurso__NameAssignment_1 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1943:1: ( rule__Recurso__NameAssignment_1 )
            {
             before(grammarAccess.getRecursoAccess().getNameAssignment_1()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1944:1: ( rule__Recurso__NameAssignment_1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1944:2: rule__Recurso__NameAssignment_1
            {
            pushFollow(FOLLOW_rule__Recurso__NameAssignment_1_in_rule__Recurso__Group__1__Impl3860);
            rule__Recurso__NameAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getRecursoAccess().getNameAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Recurso__Group__1__Impl"


    // $ANTLR start "rule__Aula__Group__0"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1958:1: rule__Aula__Group__0 : rule__Aula__Group__0__Impl rule__Aula__Group__1 ;
    public final void rule__Aula__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1962:1: ( rule__Aula__Group__0__Impl rule__Aula__Group__1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1963:2: rule__Aula__Group__0__Impl rule__Aula__Group__1
            {
            pushFollow(FOLLOW_rule__Aula__Group__0__Impl_in_rule__Aula__Group__03894);
            rule__Aula__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Aula__Group__1_in_rule__Aula__Group__03897);
            rule__Aula__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Aula__Group__0"


    // $ANTLR start "rule__Aula__Group__0__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1970:1: rule__Aula__Group__0__Impl : ( 'aula' ) ;
    public final void rule__Aula__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1974:1: ( ( 'aula' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1975:1: ( 'aula' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1975:1: ( 'aula' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1976:1: 'aula'
            {
             before(grammarAccess.getAulaAccess().getAulaKeyword_0()); 
            match(input,33,FOLLOW_33_in_rule__Aula__Group__0__Impl3925); 
             after(grammarAccess.getAulaAccess().getAulaKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Aula__Group__0__Impl"


    // $ANTLR start "rule__Aula__Group__1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1989:1: rule__Aula__Group__1 : rule__Aula__Group__1__Impl ;
    public final void rule__Aula__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1993:1: ( rule__Aula__Group__1__Impl )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:1994:2: rule__Aula__Group__1__Impl
            {
            pushFollow(FOLLOW_rule__Aula__Group__1__Impl_in_rule__Aula__Group__13956);
            rule__Aula__Group__1__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Aula__Group__1"


    // $ANTLR start "rule__Aula__Group__1__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2000:1: rule__Aula__Group__1__Impl : ( ( rule__Aula__NameAssignment_1 ) ) ;
    public final void rule__Aula__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2004:1: ( ( ( rule__Aula__NameAssignment_1 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2005:1: ( ( rule__Aula__NameAssignment_1 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2005:1: ( ( rule__Aula__NameAssignment_1 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2006:1: ( rule__Aula__NameAssignment_1 )
            {
             before(grammarAccess.getAulaAccess().getNameAssignment_1()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2007:1: ( rule__Aula__NameAssignment_1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2007:2: rule__Aula__NameAssignment_1
            {
            pushFollow(FOLLOW_rule__Aula__NameAssignment_1_in_rule__Aula__Group__1__Impl3983);
            rule__Aula__NameAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getAulaAccess().getNameAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Aula__Group__1__Impl"


    // $ANTLR start "rule__Clase__Group__0"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2021:1: rule__Clase__Group__0 : rule__Clase__Group__0__Impl rule__Clase__Group__1 ;
    public final void rule__Clase__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2025:1: ( rule__Clase__Group__0__Impl rule__Clase__Group__1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2026:2: rule__Clase__Group__0__Impl rule__Clase__Group__1
            {
            pushFollow(FOLLOW_rule__Clase__Group__0__Impl_in_rule__Clase__Group__04017);
            rule__Clase__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Clase__Group__1_in_rule__Clase__Group__04020);
            rule__Clase__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__0"


    // $ANTLR start "rule__Clase__Group__0__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2033:1: rule__Clase__Group__0__Impl : ( 'desde' ) ;
    public final void rule__Clase__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2037:1: ( ( 'desde' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2038:1: ( 'desde' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2038:1: ( 'desde' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2039:1: 'desde'
            {
             before(grammarAccess.getClaseAccess().getDesdeKeyword_0()); 
            match(input,34,FOLLOW_34_in_rule__Clase__Group__0__Impl4048); 
             after(grammarAccess.getClaseAccess().getDesdeKeyword_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__0__Impl"


    // $ANTLR start "rule__Clase__Group__1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2052:1: rule__Clase__Group__1 : rule__Clase__Group__1__Impl rule__Clase__Group__2 ;
    public final void rule__Clase__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2056:1: ( rule__Clase__Group__1__Impl rule__Clase__Group__2 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2057:2: rule__Clase__Group__1__Impl rule__Clase__Group__2
            {
            pushFollow(FOLLOW_rule__Clase__Group__1__Impl_in_rule__Clase__Group__14079);
            rule__Clase__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Clase__Group__2_in_rule__Clase__Group__14082);
            rule__Clase__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__1"


    // $ANTLR start "rule__Clase__Group__1__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2064:1: rule__Clase__Group__1__Impl : ( ( rule__Clase__InicioAssignment_1 ) ) ;
    public final void rule__Clase__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2068:1: ( ( ( rule__Clase__InicioAssignment_1 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2069:1: ( ( rule__Clase__InicioAssignment_1 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2069:1: ( ( rule__Clase__InicioAssignment_1 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2070:1: ( rule__Clase__InicioAssignment_1 )
            {
             before(grammarAccess.getClaseAccess().getInicioAssignment_1()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2071:1: ( rule__Clase__InicioAssignment_1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2071:2: rule__Clase__InicioAssignment_1
            {
            pushFollow(FOLLOW_rule__Clase__InicioAssignment_1_in_rule__Clase__Group__1__Impl4109);
            rule__Clase__InicioAssignment_1();

            state._fsp--;


            }

             after(grammarAccess.getClaseAccess().getInicioAssignment_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__1__Impl"


    // $ANTLR start "rule__Clase__Group__2"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2081:1: rule__Clase__Group__2 : rule__Clase__Group__2__Impl rule__Clase__Group__3 ;
    public final void rule__Clase__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2085:1: ( rule__Clase__Group__2__Impl rule__Clase__Group__3 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2086:2: rule__Clase__Group__2__Impl rule__Clase__Group__3
            {
            pushFollow(FOLLOW_rule__Clase__Group__2__Impl_in_rule__Clase__Group__24139);
            rule__Clase__Group__2__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Clase__Group__3_in_rule__Clase__Group__24142);
            rule__Clase__Group__3();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__2"


    // $ANTLR start "rule__Clase__Group__2__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2093:1: rule__Clase__Group__2__Impl : ( 'hasta' ) ;
    public final void rule__Clase__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2097:1: ( ( 'hasta' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2098:1: ( 'hasta' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2098:1: ( 'hasta' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2099:1: 'hasta'
            {
             before(grammarAccess.getClaseAccess().getHastaKeyword_2()); 
            match(input,35,FOLLOW_35_in_rule__Clase__Group__2__Impl4170); 
             after(grammarAccess.getClaseAccess().getHastaKeyword_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__2__Impl"


    // $ANTLR start "rule__Clase__Group__3"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2112:1: rule__Clase__Group__3 : rule__Clase__Group__3__Impl rule__Clase__Group__4 ;
    public final void rule__Clase__Group__3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2116:1: ( rule__Clase__Group__3__Impl rule__Clase__Group__4 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2117:2: rule__Clase__Group__3__Impl rule__Clase__Group__4
            {
            pushFollow(FOLLOW_rule__Clase__Group__3__Impl_in_rule__Clase__Group__34201);
            rule__Clase__Group__3__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Clase__Group__4_in_rule__Clase__Group__34204);
            rule__Clase__Group__4();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__3"


    // $ANTLR start "rule__Clase__Group__3__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2124:1: rule__Clase__Group__3__Impl : ( ( rule__Clase__FinAssignment_3 ) ) ;
    public final void rule__Clase__Group__3__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2128:1: ( ( ( rule__Clase__FinAssignment_3 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2129:1: ( ( rule__Clase__FinAssignment_3 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2129:1: ( ( rule__Clase__FinAssignment_3 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2130:1: ( rule__Clase__FinAssignment_3 )
            {
             before(grammarAccess.getClaseAccess().getFinAssignment_3()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2131:1: ( rule__Clase__FinAssignment_3 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2131:2: rule__Clase__FinAssignment_3
            {
            pushFollow(FOLLOW_rule__Clase__FinAssignment_3_in_rule__Clase__Group__3__Impl4231);
            rule__Clase__FinAssignment_3();

            state._fsp--;


            }

             after(grammarAccess.getClaseAccess().getFinAssignment_3()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__3__Impl"


    // $ANTLR start "rule__Clase__Group__4"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2141:1: rule__Clase__Group__4 : rule__Clase__Group__4__Impl rule__Clase__Group__5 ;
    public final void rule__Clase__Group__4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2145:1: ( rule__Clase__Group__4__Impl rule__Clase__Group__5 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2146:2: rule__Clase__Group__4__Impl rule__Clase__Group__5
            {
            pushFollow(FOLLOW_rule__Clase__Group__4__Impl_in_rule__Clase__Group__44261);
            rule__Clase__Group__4__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Clase__Group__5_in_rule__Clase__Group__44264);
            rule__Clase__Group__5();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__4"


    // $ANTLR start "rule__Clase__Group__4__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2153:1: rule__Clase__Group__4__Impl : ( ( rule__Clase__MateriaAssignment_4 ) ) ;
    public final void rule__Clase__Group__4__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2157:1: ( ( ( rule__Clase__MateriaAssignment_4 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2158:1: ( ( rule__Clase__MateriaAssignment_4 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2158:1: ( ( rule__Clase__MateriaAssignment_4 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2159:1: ( rule__Clase__MateriaAssignment_4 )
            {
             before(grammarAccess.getClaseAccess().getMateriaAssignment_4()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2160:1: ( rule__Clase__MateriaAssignment_4 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2160:2: rule__Clase__MateriaAssignment_4
            {
            pushFollow(FOLLOW_rule__Clase__MateriaAssignment_4_in_rule__Clase__Group__4__Impl4291);
            rule__Clase__MateriaAssignment_4();

            state._fsp--;


            }

             after(grammarAccess.getClaseAccess().getMateriaAssignment_4()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__4__Impl"


    // $ANTLR start "rule__Clase__Group__5"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2170:1: rule__Clase__Group__5 : rule__Clase__Group__5__Impl rule__Clase__Group__6 ;
    public final void rule__Clase__Group__5() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2174:1: ( rule__Clase__Group__5__Impl rule__Clase__Group__6 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2175:2: rule__Clase__Group__5__Impl rule__Clase__Group__6
            {
            pushFollow(FOLLOW_rule__Clase__Group__5__Impl_in_rule__Clase__Group__54321);
            rule__Clase__Group__5__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Clase__Group__6_in_rule__Clase__Group__54324);
            rule__Clase__Group__6();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__5"


    // $ANTLR start "rule__Clase__Group__5__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2182:1: rule__Clase__Group__5__Impl : ( 'en' ) ;
    public final void rule__Clase__Group__5__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2186:1: ( ( 'en' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2187:1: ( 'en' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2187:1: ( 'en' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2188:1: 'en'
            {
             before(grammarAccess.getClaseAccess().getEnKeyword_5()); 
            match(input,36,FOLLOW_36_in_rule__Clase__Group__5__Impl4352); 
             after(grammarAccess.getClaseAccess().getEnKeyword_5()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__5__Impl"


    // $ANTLR start "rule__Clase__Group__6"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2201:1: rule__Clase__Group__6 : rule__Clase__Group__6__Impl ;
    public final void rule__Clase__Group__6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2205:1: ( rule__Clase__Group__6__Impl )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2206:2: rule__Clase__Group__6__Impl
            {
            pushFollow(FOLLOW_rule__Clase__Group__6__Impl_in_rule__Clase__Group__64383);
            rule__Clase__Group__6__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__6"


    // $ANTLR start "rule__Clase__Group__6__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2212:1: rule__Clase__Group__6__Impl : ( ( rule__Clase__AulaAssignment_6 ) ) ;
    public final void rule__Clase__Group__6__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2216:1: ( ( ( rule__Clase__AulaAssignment_6 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2217:1: ( ( rule__Clase__AulaAssignment_6 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2217:1: ( ( rule__Clase__AulaAssignment_6 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2218:1: ( rule__Clase__AulaAssignment_6 )
            {
             before(grammarAccess.getClaseAccess().getAulaAssignment_6()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2219:1: ( rule__Clase__AulaAssignment_6 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2219:2: rule__Clase__AulaAssignment_6
            {
            pushFollow(FOLLOW_rule__Clase__AulaAssignment_6_in_rule__Clase__Group__6__Impl4410);
            rule__Clase__AulaAssignment_6();

            state._fsp--;


            }

             after(grammarAccess.getClaseAccess().getAulaAssignment_6()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__Group__6__Impl"


    // $ANTLR start "rule__Asignacion__Group__0"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2243:1: rule__Asignacion__Group__0 : rule__Asignacion__Group__0__Impl rule__Asignacion__Group__1 ;
    public final void rule__Asignacion__Group__0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2247:1: ( rule__Asignacion__Group__0__Impl rule__Asignacion__Group__1 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2248:2: rule__Asignacion__Group__0__Impl rule__Asignacion__Group__1
            {
            pushFollow(FOLLOW_rule__Asignacion__Group__0__Impl_in_rule__Asignacion__Group__04454);
            rule__Asignacion__Group__0__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Asignacion__Group__1_in_rule__Asignacion__Group__04457);
            rule__Asignacion__Group__1();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Asignacion__Group__0"


    // $ANTLR start "rule__Asignacion__Group__0__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2255:1: rule__Asignacion__Group__0__Impl : ( ( rule__Asignacion__DocenteAssignment_0 ) ) ;
    public final void rule__Asignacion__Group__0__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2259:1: ( ( ( rule__Asignacion__DocenteAssignment_0 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2260:1: ( ( rule__Asignacion__DocenteAssignment_0 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2260:1: ( ( rule__Asignacion__DocenteAssignment_0 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2261:1: ( rule__Asignacion__DocenteAssignment_0 )
            {
             before(grammarAccess.getAsignacionAccess().getDocenteAssignment_0()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2262:1: ( rule__Asignacion__DocenteAssignment_0 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2262:2: rule__Asignacion__DocenteAssignment_0
            {
            pushFollow(FOLLOW_rule__Asignacion__DocenteAssignment_0_in_rule__Asignacion__Group__0__Impl4484);
            rule__Asignacion__DocenteAssignment_0();

            state._fsp--;


            }

             after(grammarAccess.getAsignacionAccess().getDocenteAssignment_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Asignacion__Group__0__Impl"


    // $ANTLR start "rule__Asignacion__Group__1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2272:1: rule__Asignacion__Group__1 : rule__Asignacion__Group__1__Impl rule__Asignacion__Group__2 ;
    public final void rule__Asignacion__Group__1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2276:1: ( rule__Asignacion__Group__1__Impl rule__Asignacion__Group__2 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2277:2: rule__Asignacion__Group__1__Impl rule__Asignacion__Group__2
            {
            pushFollow(FOLLOW_rule__Asignacion__Group__1__Impl_in_rule__Asignacion__Group__14514);
            rule__Asignacion__Group__1__Impl();

            state._fsp--;

            pushFollow(FOLLOW_rule__Asignacion__Group__2_in_rule__Asignacion__Group__14517);
            rule__Asignacion__Group__2();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Asignacion__Group__1"


    // $ANTLR start "rule__Asignacion__Group__1__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2284:1: rule__Asignacion__Group__1__Impl : ( 'dicta' ) ;
    public final void rule__Asignacion__Group__1__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2288:1: ( ( 'dicta' ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2289:1: ( 'dicta' )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2289:1: ( 'dicta' )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2290:1: 'dicta'
            {
             before(grammarAccess.getAsignacionAccess().getDictaKeyword_1()); 
            match(input,37,FOLLOW_37_in_rule__Asignacion__Group__1__Impl4545); 
             after(grammarAccess.getAsignacionAccess().getDictaKeyword_1()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Asignacion__Group__1__Impl"


    // $ANTLR start "rule__Asignacion__Group__2"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2303:1: rule__Asignacion__Group__2 : rule__Asignacion__Group__2__Impl ;
    public final void rule__Asignacion__Group__2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2307:1: ( rule__Asignacion__Group__2__Impl )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2308:2: rule__Asignacion__Group__2__Impl
            {
            pushFollow(FOLLOW_rule__Asignacion__Group__2__Impl_in_rule__Asignacion__Group__24576);
            rule__Asignacion__Group__2__Impl();

            state._fsp--;


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Asignacion__Group__2"


    // $ANTLR start "rule__Asignacion__Group__2__Impl"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2314:1: rule__Asignacion__Group__2__Impl : ( ( rule__Asignacion__MateriaAssignment_2 ) ) ;
    public final void rule__Asignacion__Group__2__Impl() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2318:1: ( ( ( rule__Asignacion__MateriaAssignment_2 ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2319:1: ( ( rule__Asignacion__MateriaAssignment_2 ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2319:1: ( ( rule__Asignacion__MateriaAssignment_2 ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2320:1: ( rule__Asignacion__MateriaAssignment_2 )
            {
             before(grammarAccess.getAsignacionAccess().getMateriaAssignment_2()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2321:1: ( rule__Asignacion__MateriaAssignment_2 )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2321:2: rule__Asignacion__MateriaAssignment_2
            {
            pushFollow(FOLLOW_rule__Asignacion__MateriaAssignment_2_in_rule__Asignacion__Group__2__Impl4603);
            rule__Asignacion__MateriaAssignment_2();

            state._fsp--;


            }

             after(grammarAccess.getAsignacionAccess().getMateriaAssignment_2()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Asignacion__Group__2__Impl"


    // $ANTLR start "rule__Modelo__ElementosAssignment"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2338:1: rule__Modelo__ElementosAssignment : ( ruleElemento ) ;
    public final void rule__Modelo__ElementosAssignment() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2342:1: ( ( ruleElemento ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2343:1: ( ruleElemento )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2343:1: ( ruleElemento )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2344:1: ruleElemento
            {
             before(grammarAccess.getModeloAccess().getElementosElementoParserRuleCall_0()); 
            pushFollow(FOLLOW_ruleElemento_in_rule__Modelo__ElementosAssignment4644);
            ruleElemento();

            state._fsp--;

             after(grammarAccess.getModeloAccess().getElementosElementoParserRuleCall_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Modelo__ElementosAssignment"


    // $ANTLR start "rule__Planificacion__AnioAssignment_1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2353:1: rule__Planificacion__AnioAssignment_1 : ( RULE_INT ) ;
    public final void rule__Planificacion__AnioAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2357:1: ( ( RULE_INT ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2358:1: ( RULE_INT )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2358:1: ( RULE_INT )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2359:1: RULE_INT
            {
             before(grammarAccess.getPlanificacionAccess().getAnioINTTerminalRuleCall_1_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Planificacion__AnioAssignment_14675); 
             after(grammarAccess.getPlanificacionAccess().getAnioINTTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__AnioAssignment_1"


    // $ANTLR start "rule__Planificacion__SemestreAssignment_3"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2368:1: rule__Planificacion__SemestreAssignment_3 : ( RULE_INT ) ;
    public final void rule__Planificacion__SemestreAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2372:1: ( ( RULE_INT ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2373:1: ( RULE_INT )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2373:1: ( RULE_INT )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2374:1: RULE_INT
            {
             before(grammarAccess.getPlanificacionAccess().getSemestreINTTerminalRuleCall_3_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Planificacion__SemestreAssignment_34706); 
             after(grammarAccess.getPlanificacionAccess().getSemestreINTTerminalRuleCall_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__SemestreAssignment_3"


    // $ANTLR start "rule__Planificacion__MateriasAssignment_6"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2383:1: rule__Planificacion__MateriasAssignment_6 : ( ( RULE_ID ) ) ;
    public final void rule__Planificacion__MateriasAssignment_6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2387:1: ( ( ( RULE_ID ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2388:1: ( ( RULE_ID ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2388:1: ( ( RULE_ID ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2389:1: ( RULE_ID )
            {
             before(grammarAccess.getPlanificacionAccess().getMateriasMateriaCrossReference_6_0()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2390:1: ( RULE_ID )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2391:1: RULE_ID
            {
             before(grammarAccess.getPlanificacionAccess().getMateriasMateriaIDTerminalRuleCall_6_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Planificacion__MateriasAssignment_64741); 
             after(grammarAccess.getPlanificacionAccess().getMateriasMateriaIDTerminalRuleCall_6_0_1()); 

            }

             after(grammarAccess.getPlanificacionAccess().getMateriasMateriaCrossReference_6_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__MateriasAssignment_6"


    // $ANTLR start "rule__Planificacion__ClasesLunesAssignment_10"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2402:1: rule__Planificacion__ClasesLunesAssignment_10 : ( ruleClase ) ;
    public final void rule__Planificacion__ClasesLunesAssignment_10() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2406:1: ( ( ruleClase ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2407:1: ( ruleClase )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2407:1: ( ruleClase )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2408:1: ruleClase
            {
             before(grammarAccess.getPlanificacionAccess().getClasesLunesClaseParserRuleCall_10_0()); 
            pushFollow(FOLLOW_ruleClase_in_rule__Planificacion__ClasesLunesAssignment_104776);
            ruleClase();

            state._fsp--;

             after(grammarAccess.getPlanificacionAccess().getClasesLunesClaseParserRuleCall_10_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__ClasesLunesAssignment_10"


    // $ANTLR start "rule__Planificacion__ClasesMartesAssignment_13"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2417:1: rule__Planificacion__ClasesMartesAssignment_13 : ( ruleClase ) ;
    public final void rule__Planificacion__ClasesMartesAssignment_13() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2421:1: ( ( ruleClase ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2422:1: ( ruleClase )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2422:1: ( ruleClase )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2423:1: ruleClase
            {
             before(grammarAccess.getPlanificacionAccess().getClasesMartesClaseParserRuleCall_13_0()); 
            pushFollow(FOLLOW_ruleClase_in_rule__Planificacion__ClasesMartesAssignment_134807);
            ruleClase();

            state._fsp--;

             after(grammarAccess.getPlanificacionAccess().getClasesMartesClaseParserRuleCall_13_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__ClasesMartesAssignment_13"


    // $ANTLR start "rule__Planificacion__ClasesMiercolesAssignment_16"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2432:1: rule__Planificacion__ClasesMiercolesAssignment_16 : ( ruleClase ) ;
    public final void rule__Planificacion__ClasesMiercolesAssignment_16() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2436:1: ( ( ruleClase ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2437:1: ( ruleClase )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2437:1: ( ruleClase )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2438:1: ruleClase
            {
             before(grammarAccess.getPlanificacionAccess().getClasesMiercolesClaseParserRuleCall_16_0()); 
            pushFollow(FOLLOW_ruleClase_in_rule__Planificacion__ClasesMiercolesAssignment_164838);
            ruleClase();

            state._fsp--;

             after(grammarAccess.getPlanificacionAccess().getClasesMiercolesClaseParserRuleCall_16_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__ClasesMiercolesAssignment_16"


    // $ANTLR start "rule__Planificacion__ClasesJuevesAssignment_19"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2447:1: rule__Planificacion__ClasesJuevesAssignment_19 : ( ruleClase ) ;
    public final void rule__Planificacion__ClasesJuevesAssignment_19() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2451:1: ( ( ruleClase ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2452:1: ( ruleClase )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2452:1: ( ruleClase )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2453:1: ruleClase
            {
             before(grammarAccess.getPlanificacionAccess().getClasesJuevesClaseParserRuleCall_19_0()); 
            pushFollow(FOLLOW_ruleClase_in_rule__Planificacion__ClasesJuevesAssignment_194869);
            ruleClase();

            state._fsp--;

             after(grammarAccess.getPlanificacionAccess().getClasesJuevesClaseParserRuleCall_19_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__ClasesJuevesAssignment_19"


    // $ANTLR start "rule__Planificacion__ClasesViernesAssignment_22"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2462:1: rule__Planificacion__ClasesViernesAssignment_22 : ( ruleClase ) ;
    public final void rule__Planificacion__ClasesViernesAssignment_22() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2466:1: ( ( ruleClase ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2467:1: ( ruleClase )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2467:1: ( ruleClase )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2468:1: ruleClase
            {
             before(grammarAccess.getPlanificacionAccess().getClasesViernesClaseParserRuleCall_22_0()); 
            pushFollow(FOLLOW_ruleClase_in_rule__Planificacion__ClasesViernesAssignment_224900);
            ruleClase();

            state._fsp--;

             after(grammarAccess.getPlanificacionAccess().getClasesViernesClaseParserRuleCall_22_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__ClasesViernesAssignment_22"


    // $ANTLR start "rule__Planificacion__ClasesSabadoAssignment_25"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2477:1: rule__Planificacion__ClasesSabadoAssignment_25 : ( ruleClase ) ;
    public final void rule__Planificacion__ClasesSabadoAssignment_25() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2481:1: ( ( ruleClase ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2482:1: ( ruleClase )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2482:1: ( ruleClase )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2483:1: ruleClase
            {
             before(grammarAccess.getPlanificacionAccess().getClasesSabadoClaseParserRuleCall_25_0()); 
            pushFollow(FOLLOW_ruleClase_in_rule__Planificacion__ClasesSabadoAssignment_254931);
            ruleClase();

            state._fsp--;

             after(grammarAccess.getPlanificacionAccess().getClasesSabadoClaseParserRuleCall_25_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Planificacion__ClasesSabadoAssignment_25"


    // $ANTLR start "rule__Materia__NameAssignment_1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2492:1: rule__Materia__NameAssignment_1 : ( RULE_ID ) ;
    public final void rule__Materia__NameAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2496:1: ( ( RULE_ID ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2497:1: ( RULE_ID )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2497:1: ( RULE_ID )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2498:1: RULE_ID
            {
             before(grammarAccess.getMateriaAccess().getNameIDTerminalRuleCall_1_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Materia__NameAssignment_14962); 
             after(grammarAccess.getMateriaAccess().getNameIDTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__NameAssignment_1"


    // $ANTLR start "rule__Materia__HorasAssignment_4"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2507:1: rule__Materia__HorasAssignment_4 : ( RULE_INT ) ;
    public final void rule__Materia__HorasAssignment_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2511:1: ( ( RULE_INT ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2512:1: ( RULE_INT )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2512:1: ( RULE_INT )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2513:1: RULE_INT
            {
             before(grammarAccess.getMateriaAccess().getHorasINTTerminalRuleCall_4_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Materia__HorasAssignment_44993); 
             after(grammarAccess.getMateriaAccess().getHorasINTTerminalRuleCall_4_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__HorasAssignment_4"


    // $ANTLR start "rule__Materia__DiasAssignment_6"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2522:1: rule__Materia__DiasAssignment_6 : ( RULE_INT ) ;
    public final void rule__Materia__DiasAssignment_6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2526:1: ( ( RULE_INT ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2527:1: ( RULE_INT )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2527:1: ( RULE_INT )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2528:1: RULE_INT
            {
             before(grammarAccess.getMateriaAccess().getDiasINTTerminalRuleCall_6_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Materia__DiasAssignment_65024); 
             after(grammarAccess.getMateriaAccess().getDiasINTTerminalRuleCall_6_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__DiasAssignment_6"


    // $ANTLR start "rule__Materia__RequerimientosAssignment_7_1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2537:1: rule__Materia__RequerimientosAssignment_7_1 : ( ( RULE_ID ) ) ;
    public final void rule__Materia__RequerimientosAssignment_7_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2541:1: ( ( ( RULE_ID ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2542:1: ( ( RULE_ID ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2542:1: ( ( RULE_ID ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2543:1: ( RULE_ID )
            {
             before(grammarAccess.getMateriaAccess().getRequerimientosRecursoCrossReference_7_1_0()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2544:1: ( RULE_ID )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2545:1: RULE_ID
            {
             before(grammarAccess.getMateriaAccess().getRequerimientosRecursoIDTerminalRuleCall_7_1_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Materia__RequerimientosAssignment_7_15059); 
             after(grammarAccess.getMateriaAccess().getRequerimientosRecursoIDTerminalRuleCall_7_1_0_1()); 

            }

             after(grammarAccess.getMateriaAccess().getRequerimientosRecursoCrossReference_7_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Materia__RequerimientosAssignment_7_1"


    // $ANTLR start "rule__Docente__DedicacionAssignment_1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2556:1: rule__Docente__DedicacionAssignment_1 : ( ruleDedicacion ) ;
    public final void rule__Docente__DedicacionAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2560:1: ( ( ruleDedicacion ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2561:1: ( ruleDedicacion )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2561:1: ( ruleDedicacion )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2562:1: ruleDedicacion
            {
             before(grammarAccess.getDocenteAccess().getDedicacionDedicacionParserRuleCall_1_0()); 
            pushFollow(FOLLOW_ruleDedicacion_in_rule__Docente__DedicacionAssignment_15094);
            ruleDedicacion();

            state._fsp--;

             after(grammarAccess.getDocenteAccess().getDedicacionDedicacionParserRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Docente__DedicacionAssignment_1"


    // $ANTLR start "rule__Docente__NameAssignment_2"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2571:1: rule__Docente__NameAssignment_2 : ( RULE_ID ) ;
    public final void rule__Docente__NameAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2575:1: ( ( RULE_ID ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2576:1: ( RULE_ID )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2576:1: ( RULE_ID )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2577:1: RULE_ID
            {
             before(grammarAccess.getDocenteAccess().getNameIDTerminalRuleCall_2_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Docente__NameAssignment_25125); 
             after(grammarAccess.getDocenteAccess().getNameIDTerminalRuleCall_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Docente__NameAssignment_2"


    // $ANTLR start "rule__Recurso__NameAssignment_1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2586:1: rule__Recurso__NameAssignment_1 : ( RULE_ID ) ;
    public final void rule__Recurso__NameAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2590:1: ( ( RULE_ID ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2591:1: ( RULE_ID )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2591:1: ( RULE_ID )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2592:1: RULE_ID
            {
             before(grammarAccess.getRecursoAccess().getNameIDTerminalRuleCall_1_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Recurso__NameAssignment_15156); 
             after(grammarAccess.getRecursoAccess().getNameIDTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Recurso__NameAssignment_1"


    // $ANTLR start "rule__Aula__NameAssignment_1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2601:1: rule__Aula__NameAssignment_1 : ( RULE_ID ) ;
    public final void rule__Aula__NameAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2605:1: ( ( RULE_ID ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2606:1: ( RULE_ID )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2606:1: ( RULE_ID )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2607:1: RULE_ID
            {
             before(grammarAccess.getAulaAccess().getNameIDTerminalRuleCall_1_0()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Aula__NameAssignment_15187); 
             after(grammarAccess.getAulaAccess().getNameIDTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Aula__NameAssignment_1"


    // $ANTLR start "rule__Clase__InicioAssignment_1"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2616:1: rule__Clase__InicioAssignment_1 : ( RULE_INT ) ;
    public final void rule__Clase__InicioAssignment_1() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2620:1: ( ( RULE_INT ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2621:1: ( RULE_INT )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2621:1: ( RULE_INT )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2622:1: RULE_INT
            {
             before(grammarAccess.getClaseAccess().getInicioINTTerminalRuleCall_1_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Clase__InicioAssignment_15218); 
             after(grammarAccess.getClaseAccess().getInicioINTTerminalRuleCall_1_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__InicioAssignment_1"


    // $ANTLR start "rule__Clase__FinAssignment_3"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2631:1: rule__Clase__FinAssignment_3 : ( RULE_INT ) ;
    public final void rule__Clase__FinAssignment_3() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2635:1: ( ( RULE_INT ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2636:1: ( RULE_INT )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2636:1: ( RULE_INT )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2637:1: RULE_INT
            {
             before(grammarAccess.getClaseAccess().getFinINTTerminalRuleCall_3_0()); 
            match(input,RULE_INT,FOLLOW_RULE_INT_in_rule__Clase__FinAssignment_35249); 
             after(grammarAccess.getClaseAccess().getFinINTTerminalRuleCall_3_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__FinAssignment_3"


    // $ANTLR start "rule__Clase__MateriaAssignment_4"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2646:1: rule__Clase__MateriaAssignment_4 : ( ( RULE_ID ) ) ;
    public final void rule__Clase__MateriaAssignment_4() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2650:1: ( ( ( RULE_ID ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2651:1: ( ( RULE_ID ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2651:1: ( ( RULE_ID ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2652:1: ( RULE_ID )
            {
             before(grammarAccess.getClaseAccess().getMateriaMateriaCrossReference_4_0()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2653:1: ( RULE_ID )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2654:1: RULE_ID
            {
             before(grammarAccess.getClaseAccess().getMateriaMateriaIDTerminalRuleCall_4_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Clase__MateriaAssignment_45284); 
             after(grammarAccess.getClaseAccess().getMateriaMateriaIDTerminalRuleCall_4_0_1()); 

            }

             after(grammarAccess.getClaseAccess().getMateriaMateriaCrossReference_4_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__MateriaAssignment_4"


    // $ANTLR start "rule__Clase__AulaAssignment_6"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2665:1: rule__Clase__AulaAssignment_6 : ( ( RULE_ID ) ) ;
    public final void rule__Clase__AulaAssignment_6() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2669:1: ( ( ( RULE_ID ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2670:1: ( ( RULE_ID ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2670:1: ( ( RULE_ID ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2671:1: ( RULE_ID )
            {
             before(grammarAccess.getClaseAccess().getAulaAulaCrossReference_6_0()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2672:1: ( RULE_ID )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2673:1: RULE_ID
            {
             before(grammarAccess.getClaseAccess().getAulaAulaIDTerminalRuleCall_6_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Clase__AulaAssignment_65323); 
             after(grammarAccess.getClaseAccess().getAulaAulaIDTerminalRuleCall_6_0_1()); 

            }

             after(grammarAccess.getClaseAccess().getAulaAulaCrossReference_6_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Clase__AulaAssignment_6"


    // $ANTLR start "rule__Asignacion__DocenteAssignment_0"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2684:1: rule__Asignacion__DocenteAssignment_0 : ( ( RULE_ID ) ) ;
    public final void rule__Asignacion__DocenteAssignment_0() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2688:1: ( ( ( RULE_ID ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2689:1: ( ( RULE_ID ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2689:1: ( ( RULE_ID ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2690:1: ( RULE_ID )
            {
             before(grammarAccess.getAsignacionAccess().getDocenteDocenteCrossReference_0_0()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2691:1: ( RULE_ID )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2692:1: RULE_ID
            {
             before(grammarAccess.getAsignacionAccess().getDocenteDocenteIDTerminalRuleCall_0_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Asignacion__DocenteAssignment_05362); 
             after(grammarAccess.getAsignacionAccess().getDocenteDocenteIDTerminalRuleCall_0_0_1()); 

            }

             after(grammarAccess.getAsignacionAccess().getDocenteDocenteCrossReference_0_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Asignacion__DocenteAssignment_0"


    // $ANTLR start "rule__Asignacion__MateriaAssignment_2"
    // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2703:1: rule__Asignacion__MateriaAssignment_2 : ( ( RULE_ID ) ) ;
    public final void rule__Asignacion__MateriaAssignment_2() throws RecognitionException {

        		int stackSize = keepStackSize();
            
        try {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2707:1: ( ( ( RULE_ID ) ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2708:1: ( ( RULE_ID ) )
            {
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2708:1: ( ( RULE_ID ) )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2709:1: ( RULE_ID )
            {
             before(grammarAccess.getAsignacionAccess().getMateriaMateriaCrossReference_2_0()); 
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2710:1: ( RULE_ID )
            // ../tpi.obj3.planificador.ui/src-gen/tpi/obj3/planificador/ui/contentassist/antlr/internal/InternalPlanificador.g:2711:1: RULE_ID
            {
             before(grammarAccess.getAsignacionAccess().getMateriaMateriaIDTerminalRuleCall_2_0_1()); 
            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Asignacion__MateriaAssignment_25401); 
             after(grammarAccess.getAsignacionAccess().getMateriaMateriaIDTerminalRuleCall_2_0_1()); 

            }

             after(grammarAccess.getAsignacionAccess().getMateriaMateriaCrossReference_2_0()); 

            }


            }

        }
        catch (RecognitionException re) {
            reportError(re);
            recover(input,re);
        }
        finally {

            	restoreStackSize(stackSize);

        }
        return ;
    }
    // $ANTLR end "rule__Asignacion__MateriaAssignment_2"

    // Delegated rules


 

    public static final BitSet FOLLOW_ruleModelo_in_entryRuleModelo61 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleModelo68 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Modelo__ElementosAssignment_in_ruleModelo94 = new BitSet(new long[]{0x0000000788004022L});
    public static final BitSet FOLLOW_ruleElemento_in_entryRuleElemento122 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleElemento129 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Elemento__Alternatives_in_ruleElemento155 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rulePlanificacion_in_entryRulePlanificacion182 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRulePlanificacion189 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__0_in_rulePlanificacion215 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleMateria_in_entryRuleMateria242 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleMateria249 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group__0_in_ruleMateria275 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleDocente_in_entryRuleDocente302 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleDocente309 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Docente__Group__0_in_ruleDocente335 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleRecurso_in_entryRuleRecurso362 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleRecurso369 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Recurso__Group__0_in_ruleRecurso395 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAula_in_entryRuleAula422 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleAula429 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Aula__Group__0_in_ruleAula455 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleClase_in_entryRuleClase482 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleClase489 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__Group__0_in_ruleClase515 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleDedicacion_in_entryRuleDedicacion542 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleDedicacion549 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Dedicacion__Alternatives_in_ruleDedicacion575 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimple_in_entryRuleSimple602 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleSimple609 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_11_in_ruleSimple636 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSemi_in_entryRuleSemi664 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleSemi671 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_12_in_ruleSemi698 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleExclusiva_in_entryRuleExclusiva726 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleExclusiva733 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_13_in_ruleExclusiva760 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAsignacion_in_entryRuleAsignacion788 = new BitSet(new long[]{0x0000000000000000L});
    public static final BitSet FOLLOW_EOF_in_entryRuleAsignacion795 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Asignacion__Group__0_in_ruleAsignacion821 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rulePlanificacion_in_rule__Elemento__Alternatives857 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleMateria_in_rule__Elemento__Alternatives874 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleRecurso_in_rule__Elemento__Alternatives891 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleDocente_in_rule__Elemento__Alternatives908 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleClase_in_rule__Elemento__Alternatives925 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAula_in_rule__Elemento__Alternatives942 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleAsignacion_in_rule__Elemento__Alternatives959 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSimple_in_rule__Dedicacion__Alternatives991 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleSemi_in_rule__Dedicacion__Alternatives1008 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleExclusiva_in_rule__Dedicacion__Alternatives1025 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__0__Impl_in_rule__Planificacion__Group__01055 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__1_in_rule__Planificacion__Group__01058 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_14_in_rule__Planificacion__Group__0__Impl1086 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__1__Impl_in_rule__Planificacion__Group__11117 = new BitSet(new long[]{0x0000000000008000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__2_in_rule__Planificacion__Group__11120 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__AnioAssignment_1_in_rule__Planificacion__Group__1__Impl1147 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__2__Impl_in_rule__Planificacion__Group__21177 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__3_in_rule__Planificacion__Group__21180 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_15_in_rule__Planificacion__Group__2__Impl1208 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__3__Impl_in_rule__Planificacion__Group__31239 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__4_in_rule__Planificacion__Group__31242 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__SemestreAssignment_3_in_rule__Planificacion__Group__3__Impl1269 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__4__Impl_in_rule__Planificacion__Group__41299 = new BitSet(new long[]{0x0000000000020000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__5_in_rule__Planificacion__Group__41302 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Planificacion__Group__4__Impl1330 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__5__Impl_in_rule__Planificacion__Group__51361 = new BitSet(new long[]{0x0000000000040020L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__6_in_rule__Planificacion__Group__51364 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_17_in_rule__Planificacion__Group__5__Impl1392 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__6__Impl_in_rule__Planificacion__Group__61423 = new BitSet(new long[]{0x0000000000040020L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__7_in_rule__Planificacion__Group__61426 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__MateriasAssignment_6_in_rule__Planificacion__Group__6__Impl1453 = new BitSet(new long[]{0x0000000000000022L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__7__Impl_in_rule__Planificacion__Group__71484 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__8_in_rule__Planificacion__Group__71487 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_18_in_rule__Planificacion__Group__7__Impl1515 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__8__Impl_in_rule__Planificacion__Group__81546 = new BitSet(new long[]{0x0000000000080000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__9_in_rule__Planificacion__Group__81549 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Planificacion__Group__8__Impl1577 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__9__Impl_in_rule__Planificacion__Group__91608 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__10_in_rule__Planificacion__Group__91611 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_19_in_rule__Planificacion__Group__9__Impl1639 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__10__Impl_in_rule__Planificacion__Group__101670 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__11_in_rule__Planificacion__Group__101673 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__ClasesLunesAssignment_10_in_rule__Planificacion__Group__10__Impl1700 = new BitSet(new long[]{0x0000000400000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__11__Impl_in_rule__Planificacion__Group__111731 = new BitSet(new long[]{0x0000000000200000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__12_in_rule__Planificacion__Group__111734 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_20_in_rule__Planificacion__Group__11__Impl1762 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__12__Impl_in_rule__Planificacion__Group__121793 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__13_in_rule__Planificacion__Group__121796 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_21_in_rule__Planificacion__Group__12__Impl1824 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__13__Impl_in_rule__Planificacion__Group__131855 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__14_in_rule__Planificacion__Group__131858 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__ClasesMartesAssignment_13_in_rule__Planificacion__Group__13__Impl1885 = new BitSet(new long[]{0x0000000400000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__14__Impl_in_rule__Planificacion__Group__141916 = new BitSet(new long[]{0x0000000000400000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__15_in_rule__Planificacion__Group__141919 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_20_in_rule__Planificacion__Group__14__Impl1947 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__15__Impl_in_rule__Planificacion__Group__151978 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__16_in_rule__Planificacion__Group__151981 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_22_in_rule__Planificacion__Group__15__Impl2009 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__16__Impl_in_rule__Planificacion__Group__162040 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__17_in_rule__Planificacion__Group__162043 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__ClasesMiercolesAssignment_16_in_rule__Planificacion__Group__16__Impl2070 = new BitSet(new long[]{0x0000000400000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__17__Impl_in_rule__Planificacion__Group__172101 = new BitSet(new long[]{0x0000000000800000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__18_in_rule__Planificacion__Group__172104 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_20_in_rule__Planificacion__Group__17__Impl2132 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__18__Impl_in_rule__Planificacion__Group__182163 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__19_in_rule__Planificacion__Group__182166 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_23_in_rule__Planificacion__Group__18__Impl2194 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__19__Impl_in_rule__Planificacion__Group__192225 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__20_in_rule__Planificacion__Group__192228 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__ClasesJuevesAssignment_19_in_rule__Planificacion__Group__19__Impl2255 = new BitSet(new long[]{0x0000000400000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__20__Impl_in_rule__Planificacion__Group__202286 = new BitSet(new long[]{0x0000000001000000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__21_in_rule__Planificacion__Group__202289 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_20_in_rule__Planificacion__Group__20__Impl2317 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__21__Impl_in_rule__Planificacion__Group__212348 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__22_in_rule__Planificacion__Group__212351 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_24_in_rule__Planificacion__Group__21__Impl2379 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__22__Impl_in_rule__Planificacion__Group__222410 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__23_in_rule__Planificacion__Group__222413 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__ClasesViernesAssignment_22_in_rule__Planificacion__Group__22__Impl2440 = new BitSet(new long[]{0x0000000400000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__23__Impl_in_rule__Planificacion__Group__232471 = new BitSet(new long[]{0x0000000002000000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__24_in_rule__Planificacion__Group__232474 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_20_in_rule__Planificacion__Group__23__Impl2502 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__24__Impl_in_rule__Planificacion__Group__242533 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__25_in_rule__Planificacion__Group__242536 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_25_in_rule__Planificacion__Group__24__Impl2564 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__25__Impl_in_rule__Planificacion__Group__252595 = new BitSet(new long[]{0x0000000400100000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__26_in_rule__Planificacion__Group__252598 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__ClasesSabadoAssignment_25_in_rule__Planificacion__Group__25__Impl2625 = new BitSet(new long[]{0x0000000400000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__26__Impl_in_rule__Planificacion__Group__262656 = new BitSet(new long[]{0x0000000004000000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__27_in_rule__Planificacion__Group__262659 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_20_in_rule__Planificacion__Group__26__Impl2687 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__27__Impl_in_rule__Planificacion__Group__272718 = new BitSet(new long[]{0x0000000004000000L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__28_in_rule__Planificacion__Group__272721 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_26_in_rule__Planificacion__Group__27__Impl2749 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Planificacion__Group__28__Impl_in_rule__Planificacion__Group__282780 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_26_in_rule__Planificacion__Group__28__Impl2808 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group__0__Impl_in_rule__Materia__Group__02897 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__Materia__Group__1_in_rule__Materia__Group__02900 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_27_in_rule__Materia__Group__0__Impl2928 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group__1__Impl_in_rule__Materia__Group__12959 = new BitSet(new long[]{0x0000000000010000L});
    public static final BitSet FOLLOW_rule__Materia__Group__2_in_rule__Materia__Group__12962 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__NameAssignment_1_in_rule__Materia__Group__1__Impl2989 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group__2__Impl_in_rule__Materia__Group__23019 = new BitSet(new long[]{0x0000000010000000L});
    public static final BitSet FOLLOW_rule__Materia__Group__3_in_rule__Materia__Group__23022 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_16_in_rule__Materia__Group__2__Impl3050 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group__3__Impl_in_rule__Materia__Group__33081 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Materia__Group__4_in_rule__Materia__Group__33084 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_28_in_rule__Materia__Group__3__Impl3112 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group__4__Impl_in_rule__Materia__Group__43143 = new BitSet(new long[]{0x0000000020000000L});
    public static final BitSet FOLLOW_rule__Materia__Group__5_in_rule__Materia__Group__43146 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__HorasAssignment_4_in_rule__Materia__Group__4__Impl3173 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group__5__Impl_in_rule__Materia__Group__53203 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Materia__Group__6_in_rule__Materia__Group__53206 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_29_in_rule__Materia__Group__5__Impl3234 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group__6__Impl_in_rule__Materia__Group__63265 = new BitSet(new long[]{0x0000000044000000L});
    public static final BitSet FOLLOW_rule__Materia__Group__7_in_rule__Materia__Group__63268 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__DiasAssignment_6_in_rule__Materia__Group__6__Impl3295 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group__7__Impl_in_rule__Materia__Group__73325 = new BitSet(new long[]{0x0000000044000000L});
    public static final BitSet FOLLOW_rule__Materia__Group__8_in_rule__Materia__Group__73328 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group_7__0_in_rule__Materia__Group__7__Impl3355 = new BitSet(new long[]{0x0000000040000002L});
    public static final BitSet FOLLOW_rule__Materia__Group__8__Impl_in_rule__Materia__Group__83386 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_26_in_rule__Materia__Group__8__Impl3414 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group_7__0__Impl_in_rule__Materia__Group_7__03463 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__Materia__Group_7__1_in_rule__Materia__Group_7__03466 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_30_in_rule__Materia__Group_7__0__Impl3494 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__Group_7__1__Impl_in_rule__Materia__Group_7__13525 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Materia__RequerimientosAssignment_7_1_in_rule__Materia__Group_7__1__Impl3552 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Docente__Group__0__Impl_in_rule__Docente__Group__03586 = new BitSet(new long[]{0x0000000000003800L});
    public static final BitSet FOLLOW_rule__Docente__Group__1_in_rule__Docente__Group__03589 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_31_in_rule__Docente__Group__0__Impl3617 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Docente__Group__1__Impl_in_rule__Docente__Group__13648 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__Docente__Group__2_in_rule__Docente__Group__13651 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Docente__DedicacionAssignment_1_in_rule__Docente__Group__1__Impl3678 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Docente__Group__2__Impl_in_rule__Docente__Group__23708 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Docente__NameAssignment_2_in_rule__Docente__Group__2__Impl3735 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Recurso__Group__0__Impl_in_rule__Recurso__Group__03771 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__Recurso__Group__1_in_rule__Recurso__Group__03774 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_32_in_rule__Recurso__Group__0__Impl3802 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Recurso__Group__1__Impl_in_rule__Recurso__Group__13833 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Recurso__NameAssignment_1_in_rule__Recurso__Group__1__Impl3860 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Aula__Group__0__Impl_in_rule__Aula__Group__03894 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__Aula__Group__1_in_rule__Aula__Group__03897 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_33_in_rule__Aula__Group__0__Impl3925 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Aula__Group__1__Impl_in_rule__Aula__Group__13956 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Aula__NameAssignment_1_in_rule__Aula__Group__1__Impl3983 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__Group__0__Impl_in_rule__Clase__Group__04017 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Clase__Group__1_in_rule__Clase__Group__04020 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_34_in_rule__Clase__Group__0__Impl4048 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__Group__1__Impl_in_rule__Clase__Group__14079 = new BitSet(new long[]{0x0000000800000000L});
    public static final BitSet FOLLOW_rule__Clase__Group__2_in_rule__Clase__Group__14082 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__InicioAssignment_1_in_rule__Clase__Group__1__Impl4109 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__Group__2__Impl_in_rule__Clase__Group__24139 = new BitSet(new long[]{0x0000000000000010L});
    public static final BitSet FOLLOW_rule__Clase__Group__3_in_rule__Clase__Group__24142 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_35_in_rule__Clase__Group__2__Impl4170 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__Group__3__Impl_in_rule__Clase__Group__34201 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__Clase__Group__4_in_rule__Clase__Group__34204 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__FinAssignment_3_in_rule__Clase__Group__3__Impl4231 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__Group__4__Impl_in_rule__Clase__Group__44261 = new BitSet(new long[]{0x0000001000000000L});
    public static final BitSet FOLLOW_rule__Clase__Group__5_in_rule__Clase__Group__44264 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__MateriaAssignment_4_in_rule__Clase__Group__4__Impl4291 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__Group__5__Impl_in_rule__Clase__Group__54321 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__Clase__Group__6_in_rule__Clase__Group__54324 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_36_in_rule__Clase__Group__5__Impl4352 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__Group__6__Impl_in_rule__Clase__Group__64383 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Clase__AulaAssignment_6_in_rule__Clase__Group__6__Impl4410 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Asignacion__Group__0__Impl_in_rule__Asignacion__Group__04454 = new BitSet(new long[]{0x0000002000000000L});
    public static final BitSet FOLLOW_rule__Asignacion__Group__1_in_rule__Asignacion__Group__04457 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Asignacion__DocenteAssignment_0_in_rule__Asignacion__Group__0__Impl4484 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Asignacion__Group__1__Impl_in_rule__Asignacion__Group__14514 = new BitSet(new long[]{0x0000000000000020L});
    public static final BitSet FOLLOW_rule__Asignacion__Group__2_in_rule__Asignacion__Group__14517 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_37_in_rule__Asignacion__Group__1__Impl4545 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Asignacion__Group__2__Impl_in_rule__Asignacion__Group__24576 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_rule__Asignacion__MateriaAssignment_2_in_rule__Asignacion__Group__2__Impl4603 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleElemento_in_rule__Modelo__ElementosAssignment4644 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Planificacion__AnioAssignment_14675 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Planificacion__SemestreAssignment_34706 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Planificacion__MateriasAssignment_64741 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleClase_in_rule__Planificacion__ClasesLunesAssignment_104776 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleClase_in_rule__Planificacion__ClasesMartesAssignment_134807 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleClase_in_rule__Planificacion__ClasesMiercolesAssignment_164838 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleClase_in_rule__Planificacion__ClasesJuevesAssignment_194869 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleClase_in_rule__Planificacion__ClasesViernesAssignment_224900 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleClase_in_rule__Planificacion__ClasesSabadoAssignment_254931 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Materia__NameAssignment_14962 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Materia__HorasAssignment_44993 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Materia__DiasAssignment_65024 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Materia__RequerimientosAssignment_7_15059 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_ruleDedicacion_in_rule__Docente__DedicacionAssignment_15094 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Docente__NameAssignment_25125 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Recurso__NameAssignment_15156 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Aula__NameAssignment_15187 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Clase__InicioAssignment_15218 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_INT_in_rule__Clase__FinAssignment_35249 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Clase__MateriaAssignment_45284 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Clase__AulaAssignment_65323 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Asignacion__DocenteAssignment_05362 = new BitSet(new long[]{0x0000000000000002L});
    public static final BitSet FOLLOW_RULE_ID_in_rule__Asignacion__MateriaAssignment_25401 = new BitSet(new long[]{0x0000000000000002L});

}